Форум: "Базы";
Текущий архив: 2003.09.25;
Скачать: [xml.tar.bz2];
ВнизПорядок проверки условий в запросе Найти похожие ветки
← →
jack128 (2003-09-02 19:42) [0]Скажите пожалуйста, вот есть некий запрос
select ....
from ...
where <условие1> and <условие2>
В каком порядке будут проверятся эти условия? Так как я написал в запросе или сервер сам решит, что лудше???
← →
kuchumovkv (2003-09-02 20:08) [1]Пардон за вопрос, а какая разница, если он все равно будет проверять их оба и выбирать записи только с выполнением обоих. Может, я что не понял в вопросе. Поясни.
P.S. Если б я был сервером, я бы пробегал по всем полям подряд, отмечал для себя первое попавшееся из необходимых для проверки, проверял, писал где-нибудь в памяти о результате флаг, и т.д. до FieldsCount. Мне было бы так проще. Как работают, твои дрова, к сожалению, не знаю.
← →
kuchumovkv (2003-09-02 20:08) [2]Пардон за вопрос, а какая разница, если он все равно будет проверять их оба и выбирать записи только с выполнением обоих. Может, я что не понял в вопросе. Поясни.
P.S. Если б я был сервером, я бы пробегал по всем полям подряд, отмечал для себя первое попавшееся из необходимых для проверки, проверял, писал где-нибудь в памяти о результате флаг, и т.д. до FieldsCount. Мне было бы так проще. Как работают твои дрова, к сожалению, не знаю.
← →
jack128 (2003-09-02 20:25) [3]Пусть <условие1> := Field1 = 10
<условие2> := Field2 = 15
Если по Field2 есть индекс, а по Field1 нету, то будь бы я сервером я бы искал по индексу на соответствие условию2, а потом проверял на соответствие условию1.. Но я не сервер ;-) Потому и спрашиваю
← →
Deniz (2003-09-03 06:49) [4]Вот ты сам себе и ответил, пиши условия по наличию индексов, причем если индекс из нескольких полей, то их порядок надо сохранить в условиях.
А можно еще и план написать для оптимизатора
← →
jack128 (2003-09-03 10:40) [5]собственно я хотел услышать вот эти слова
> если индекс из нескольких полей, то их порядок надо сохранить
> в условиях
поесть порядок проверки условий определяется в запросе в разделе where.
> А можно еще и план написать для оптимизатора
К сожелению еще не совсем разобрался, пока "в процессе"
Спасибо
← →
stone (2003-09-03 10:52) [6]
> jack128 © (03.09.03 10:40) [5]
Вообще, многое зависит от СУБД. Наприиер, MSSQL сам строит план оптимизации запросов и, соответственно, порядок условий становится не так важен. При этом будут выбраны и подключены индексы, которые сервер посчитает наиболее подходящими.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.09.25;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.012 c