alyuev писал(а) 08. Июня 2023 :: 09:34:Это, конечно, так работает. Но почему он стал использовать ACDATETIM? Не буду же везде + ставить в старых запросах. Это же где-то еще может вылезти... Или тут уж как повезет?
Пришлось несколько откатиться, из-за глюка с like и оптимизатором like c between.
Ожидамая цена в отладке по IDDOC писалась 11, а сейчас 22 как у ACDATETIM. Ну вот ACDATETIM и попал в отбор, и хотя этот индекс тоже не плохой, но в твоем запросе это полная жесть...
Полноценного выбора на основе индексов то нет, есть телепатирующий подсказчик.
А оптимизатор в sqlite тоже развивается, так что гарантии что все запросы будут всегда работать как задумано нет.
P.S. Не нравится мне этот запрос...
Количество видов участвующих в запросе документов видимо ограничено, почему бы сначала не прогнать Журнал по DOCTYPE (IDDOCDEF,DATE,TIME,IDDOC), а потом уже левым соединением прилепить __1S_CRDOC? имхо должно быть значительно быстрее.
Не люблю INNER JOIN, он умеет переставлять таблицы местами и иногда выдает такие чудеса...
Между прочим RIGHT JOIN появился в 2022-06-25 (3.39.0) может и тут поможет.