|
|
|
Использование IDKEY при выборке с сортировкой ORDER BY ID DESC
|
|||
|---|---|---|---|
|
#18+
На неделе второй раз столкнулся с ситуацией, когда при выборке 10 строк таблицы с 2 млн. записей все перестает работать при сортировке по АйДи. Т.е. запрос типа SELECT myColor from myTable where MyDate between ? and ? отдает 10 результатов, к примеру (при наличии индекса на MyDate) 0.000 с. а вот SELECT TOP 1 myColor from myTable where MyDate between ? and ? ORDER BY ID DESC уходит в чтение IDKEY таблицы, и причем заигнорить этот индекс не получается. Минуты эта п..ла считает. В итоге применяю двойные(!) запросы вида (или вариации на ту же тему): SELECT MAX(ID) into :maxID from myTable where MyDate between ? and ? SELECT myColor from myTable where ID = :maxId Это работает приемлемо, но страшно меня нервирует. М.б. есть какие-то другие варианты отбить у каше охоту лезть в АйДиКей при наличии в запросе прекрасных возможностей сделать выборку по нормальным индексам? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2013, 07:58 |
|
||
|
Использование IDKEY при выборке с сортировкой ORDER BY ID DESC
|
|||
|---|---|---|---|
|
#18+
используйте %NOTOPOPT в запроса from %NOTOPOPT myclass ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2013, 08:03 |
|
||
|
|

start [/forum/topic.php?fid=39&fpage=24&tid=1557030]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
52ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
2ms |
| others: | 14ms |
| total: | 157ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...