|
|
|
Имеет ли смысл индексировать одно из полей, по которым выполняется сортировка?
|
|||
|---|---|---|---|
|
#18+
Доброе время суток. Подскажите пожалуйста, имеет ли смысл создавать индекс поля в следующем случае: Запрос к MySQL Код: sql 1. Читал здесь: http://www.mysql.ru/docs/man/ORDER_BY_optimisation.html Понял, что если сортировка происходит по нескольким индексам, то индексы не учитываются. Но может быть есть смысл проиндексировать одно из полей? (Хочется поле c, так как его значения в записях будут увеличиваться быстрее чем a и b. ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2013, 18:07:29 |
|
||
|
Имеет ли смысл индексировать одно из полей, по которым выполняется сортировка?
|
|||
|---|---|---|---|
|
#18+
А что мешает создать индекс (a,b,c) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2013, 18:14:59 |
|
||
|
Имеет ли смысл индексировать одно из полей, по которым выполняется сортировка?
|
|||
|---|---|---|---|
|
#18+
Noob2014Но может быть есть смысл проиндексировать одно из полей? (Хочется поле c, так как его значения в записях будут увеличиваться быстрее чем a и b. )Возможно, сработает индекс по полю a. Но вот индекс по полю c точно не сработает, т.к. это поле не идет первым в ORDER BY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2013, 18:17:33 |
|
||
|
Имеет ли смысл индексировать одно из полей, по которым выполняется сортировка?
|
|||
|---|---|---|---|
|
#18+
Большое спасибо. Попробую индекс (a,b,c). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2013, 18:55:08 |
|
||
|
Имеет ли смысл индексировать одно из полей, по которым выполняется сортировка?
|
|||
|---|---|---|---|
|
#18+
Noob2014, Я бы сказал, что индексация для ORDER BY -- это вообще очень сомнительная вещь. Для случая твоего запроса она может сработать -- там нет WHERE. Но в реальности запросов без WHERE не бывает, и индексы используются прежде всего для оптимизации выборки по SARG-ам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2013, 19:10:37 |
|
||
|
Имеет ли смысл индексировать одно из полей, по которым выполняется сортировка?
|
|||
|---|---|---|---|
|
#18+
Если у тебя из этой таблицы всегда данные достаются отсортированными по a DESC, b DESC, c DESC , то ты можешь в свойствах самой таблицы указать что сортировать по этим полям. Например: Код: sql 1. и теперь уже обычный запрос: Код: sql 1. будет выдавать тебе отсортированную в нужном порядке таблицу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2013, 01:48:04 |
|
||
|
Имеет ли смысл индексировать одно из полей, по которым выполняется сортировка?
|
|||
|---|---|---|---|
|
#18+
InterSkyЕсли у тебя из этой таблицы всегда данные достаются отсортированными по a DESC, b DESC, c DESC , то ты можешь в свойствах самой таблицы указать что сортировать по этим полям. Например: Код: sql 1. и теперь уже обычный запрос: Код: sql 1. будет выдавать тебе отсортированную в нужном порядке таблицу.С такой массой оговорок, что не вижу смысла связываться. Например: 1) Только для MyISAM. 2) Первый же JOIN может испортить всю картину. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2013, 02:22:04 |
|
||
|
Имеет ли смысл индексировать одно из полей, по которым выполняется сортировка?
|
|||
|---|---|---|---|
|
#18+
miksoftПервый же JOIN может испортить всю картину. Ключевое слово - "может"? Смотря какой JOIN. Как в прочем и в любой другой таблице отсортированной по автоинкрименту... Всё на самом деле зависит от задачи. Может создатель темы просто хочет увидеть 10 последних посетителей? miksoftТолько для MyISAM. А мне за всю жизнь не приходилось использовать что-то другое. Хотя я конечно допускаю что есть задачи в которых необходимы транзакции. Но в целом innoDB куда проблематичней, с кучей ограничений, да ещё и медленней. miksoftС такой массой оговорок, что не вижу смысла связываться А может напишите об этом разработчикам? Дескать прошу исключить данный функционал из следующих версий, ибо то что вы сделали работает с массой оговорок, и я не вижу в этом смысла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 08:07:26 |
|
||
|
Имеет ли смысл индексировать одно из полей, по которым выполняется сортировка?
|
|||
|---|---|---|---|
|
#18+
InterSkyи теперь уже обычный запрос: Код: sql 1. будет выдавать тебе отсортированную в нужном порядке таблицу. Вот именно сюда нужно скопировать это ключевое слово "может", и заменить им слово "будет". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 08:43:35 |
|
||
|
Имеет ли смысл индексировать одно из полей, по которым выполняется сортировка?
|
|||
|---|---|---|---|
|
#18+
InterSkyА может напишите об этом разработчикам? Дескать прошу исключить данный функционал из следующих версий, ибо то что вы сделали работает с массой оговорок, и я не вижу в этом смысла. А какой функционал, а? что данные в таблице будут физически расположены в указанном сортироввкой порядке - вот это и есть весь функционал. А вот то, что они будут отдаваться сервером в этом порядке, если не указать сортировку - это не заложенный функционал и не следствие из него, а обычные досужие вымыслы, пусть оно зачастую и наблюдается на практике. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 08:46:54 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=47&tid=1835681]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
29ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 189ms |
| total: | 272ms |

| 0 / 0 |
