Вопрос по фильтрам

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
hope
Местный житель
Сообщения: 1353
Зарегистрирован: 29 мар 2005, 17:49
Контактная информация:

Вопрос по фильтрам

Сообщение hope »

Чтобы SQL-запрос формировался быстрее нужно в (()) правильно описать связи и условия - в соответствии с имеющимися фильтрами по таблицам.
Нужно чтобы эти связи и условия вписывались в один фильтр? Или можно чтобы они вписывались в 2 фильтра по одной таблице? При чем эти фильтры перекрываются.?
???
m0p3e
Местный житель
Сообщения: 1386
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Не совсем понятно что ты имеешь ввиду.

Сообщение m0p3e »

В запросе есть ограничения. Например
select *
from KatSopr
where ((
date(01,01,2002) <<= KatSopr.dSopr and
date(31,01,2002) >>= KatSopr.dSopr and
Word(201) == KatSopr.vidSopr
))
;
В данном случае я накладываю ограничения на выборку. При этом я попадаю в индекс KatSopr02. В этом же индексе присутствует KatSopr.nsopr. Он с пометкой ВРег. Это значит что ты можешь его или использовать или нет. :) Т.е. если в выборку ты добавишь после )) order by KatSopr.nSort то все равно попадешь в индекс KatSopr02.

Фильтром в данном случае будут условия после )). Condition. Т.е. если ты напишешь так
))
(subStr(KatSopr.nSopr,1,1) = '3')
то у тебя на выборку будет наложен фильтр. Будут выданы только накладные с номером начинающемся на 3.

Мы говорим об одних фильтрах?
GalaxyFoe
Новичок
Сообщения: 29
Зарегистрирован: 29 мар 2005, 17:49

Насколько я понимаю....

Сообщение GalaxyFoe »

...HOPE под фильтрами понимает индексы. Нужно, чтобы вписывались в один.
Ответить