Показать сообщение отдельно
Старый 11.01.2008, 12:55   #9  
tourist is offline
tourist
Участник
 
21 / 14 (1) ++
Регистрация: 03.05.2006
Цитата:
Сообщение от CDR Посмотреть сообщение
Всем превед!

Представим следующую ситуацию: есть табличка LedgerTrans с большим количеством записей (порядка 500 тыс.). Соответственно нужно выбрать из нее только записи, у которых счет равен 10.100 и 10.200. Внимание - вопрос!

Какой запрос отработает быстрее?
1. select LedgerTrans exist join param where LedgerTrans.AccountNum == param.AccountNum (param - табличка, в которой перечислены нужные счета, в нашем случае 10.100 и 10.200).
2. select LedgerTrans where LedgerTrans.AccountNum like "10.*"
Эти два запроса не эквивалентны, если нет уверенности, что все 10* счета записаны в табличку param и что так будет всегда.