powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Картотека
2 сообщений из 27, страница 2 из 2
Картотека
    #35810535
Senya_L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KOT MATPOCKuHSenya_L
А что, посчитать некошерно?
Из-за такой ерундовины так ломать нормальную структуру с одной таблицей?
Сползаю под стул... :)

Держись!!!!

Да, некошерно из-за объемов данных и универсальности вопроса.
Если бы карточек было 100-200 - было бы без разницы, но когда начинаем считать милионы...
Я в одном из своих предложений показывал, что по полю "значение" таблицы значений аттрибутов карточек нужен индекс. Иначе, для любого запроса с ограничением значений аттрибутов будем иметь FULL TABLE SCAN, т.е. полный просмотр большой таблицы.
В оракле, например, можно сделать одно текстовое поле, но сделать индексы:
- по самому, полю
- по функциям преобразования значения поля к числу, дате и др..
Тогда SELECT * From T Where to_number(val) = 10, при наличии индекса на to_number(val) будет выполняться по индексу очень быстро. (Кстати, как следствие такого решения для упращения запросов я предлгал прописывать значениями по-умолчанию значение нового аттрибута во всех карточках)

В других СУБД чаще всего такое невозможно, а т.к. автор задал вопрос на этот форум, то нужно универсальное решение, не зависящее от СУБД.Прости, но не согласен совершенно. Из-за одного "универсального" запроса такое выделывать? Увольте.

Если уж речь зашла про оптимизацию.
Во-первых, индексы по полям COMPUTED BY есть не только в Оракле.
Во-вторых, пример (конечно, грубый, но из этой оперы :)):
Код: plaintext
1.
2.
select * from Tbl
where getdate() - Tbl.[birth_day] <  23 
индекс не испольузется. То же самое
Код: plaintext
1.
2.
select * from Tbl
where Tbl.[birth_day] > getdate() -  23  
используется.

PS. Коль здешняя ветка по академическим методам проектирования, то надо сначала быть уверенным, что все стандартные методы оптимизации исчерпаны структуры. А в данном случае это далеко не так.
...
Рейтинг: 0 / 0
Картотека
    #35811709
Kreb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
KOT MATPOCKuH,

Спасибо за ваш вариант. Почитал доку по Oracle с индексами разобрался. Схема ваша совпала с нашей при коллективном обсуждении. Тему можно закрыть. Спасибо всем.
С уважением.
...
Рейтинг: 0 / 0
2 сообщений из 27, страница 2 из 2
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Картотека
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]