Почему в доктрине (1.2) используется WHERE IN
вместо LIMIT
?
Этот код:
Doctrine_Query::create()
->from('Table t')
->limit(10)
->getSqlQuery();
Что-то возвращает например:
SELECT t.id_table AS t__id_table FROM table AS t WHERE t__id_table IN (1,2,3,4,10,12,18,20,21,25);
Вместо этого:
SELECT t.id_table AS t__id_table FROM table AS t LIMIT 10;
Это поведение одинаково для любого значения LIMIT
. Это создает очень длинные запросы для высоких значений LIMIT
.
Дополнительный вопрос: как Doctrine узнает, какие идентификаторы использовать? (Отправив другой запрос в БД ??)