Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Сортировка в две стороны на большой таблице
|
|||
|---|---|---|---|
|
#18+
Есть таблица, в ней элементы. Вот собственно раборта, скорость не устраивает. EXPLAIN ANALYZE SELECT * FROM items ORDER BY items.price ASC, items.sort_time DESC OFFSET 0 LIMIT 10; Код: plaintext 1. 2. 3. 4. 5. 6. Тоесть задача отсортировать по цене, но так как цены могут быть одинаковыми нужен второй параметр сортировки, к примеру дата доавления, чтобы база сама не путалась. Если сортировка в одну сторону, тоесть items.price DESC, items.sort_time DESC то тут поможет сдвоеный индекс, а вот если в разные как в примере что как быть? Как ускорить запрос или может идеи есть какие то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2008, 12:14 |
|
||
|
Сортировка в две стороны на большой таблице
|
|||
|---|---|---|---|
|
#18+
create index i1 on items ( items.price ASC, items.sort_time DESC ); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2008, 12:47 |
|
||
|
Сортировка в две стороны на большой таблице
|
|||
|---|---|---|---|
|
#18+
мы же дождались этих плюшек. так давайте ими пользоваться Код: plaintext 1. 2. 3. 4. если версия ПЖ не дает задать DESC в CREATE INDEX - попробуйте или ф-й индекс с инверсией поля или создать свой opclass ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2008, 12:54 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=35684923&tid=2003831]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
36ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 329ms |

| 0 / 0 |
