Используем индекс IDD из 1sconst.dbf
id+objid+DTOS(date)+time+docid+STR(partno,3)
Время выполнения заметно уменьшилось
Запрос длился 0.362сек.
Можно еще быстрее?
|SELECT
| СпрК.id as [Контрагент $Справочник.Контрагенты],
| СпрК.IsFolder as Папка,
| СпрК.Descr as Наименование,
| IIF(СпрК.IsFolder = 1, СпрК.id, СпрК.ParentID) as Sort
|FROM
| $Справочник.Контрагенты AS СпрК
|LEFT JOIN (
| SELECT
| Период.objid as objid,
| Период.value as Филиал
| FROM 1sconst as Период
| WHERE
| tno,3)
| ____'+'___')
| AND Период.date IN
| (SELECT
| MAX(Константа.date)
| FROM 1sconst as Константа
| WHERE
| +STR(Константа.partno,3)
| ____'+'___')
| AND Константа.objid = Период.objid
| AND Константа.date <= :ВыбДата~~
| )
| ) as Контрагенты ON Контрагенты.objid = СпрК.id
|WHERE
| (((Контрагенты.Филиал = :Филиал) AND (СпрК.ParentID = :Покупатели2)) OR (СпрК.ParentID != :Покупатели2))
|ORDER BY
| Sort,Папка,Наименование
|";
Using index tag Idd to rushmore optimize table период
Rushmore optimization level for table период: partial
Using index tag Idd to rushmore optimize table константа
Rushmore optimization level for table константа: partial
Rushmore optimization level for intermediate result: none
Joining intermediate result and table константа (Cartesian product)
Using index tag Idd to rushmore optimize table период
Rushmore optimization level for table период: partial
Rushmore optimization level for intermediate result: none
Joining table период and intermediate result (Cartesian product)
Using index tag Code to rushmore optimize table спрк
Rushmore optimization level for table спрк: partial
Rushmore optimization level for intermediate result: none
Joining table спрк and intermediate result using temp index