LINUX.ORG.RU

MySQL и индексация....


0

0

Я что то не пойму.... Делаю индекс на поле типа timestamp, в котором хранится время вставки записи вот так: alter table packets add index (time); Индекс добовляется.... Потом проверяю этот индекс в работе вот так: explain select * from packets where time='2003.06.20 10:00:00'; Так у меня в колонке rows показывается что выборка пройдет по всем 8 млн. записям, в колонке possible_keys написано time, в колонке key написано NULL и type ALL. Если же дабавлю индекс к полю id: alter table packets add index (id); то всё в порядке, то есть проверка: explain select * from packets where id=32; в колонке rows показывает что выборка пройдёт всего лишь по 300 тыс. записям, в колонке possible_keys написано id, в колонке key написано id и type ref. В чём трабл???

anonymous

Re: MySQL и индексация....

Попробуй писать в селекте значение в формате YYYYMMDDHHMMSS
И поле называть не time, либо писать `time`

kka ()

Re: MySQL и индексация....

Неа не помогает, создал новую таблицу, индекс по полю типа timestamp, занёс около 10 тыс. строк, всё равно не хочет нормально селект работать, проходит по всем записям, как будто и нет индекса, всё тоже самое, что описано выше... Версия MySql 3.23.54a-11, та что с RH9 идёт. Может кто для интереса попробует, и скажет нормально у него отрабатывает селект или тоже через ж...??

anonymous ()
Ответ на: Re: MySQL и индексация.... от anonymous

Re: Re: MySQL и индексация....

Так у тебя скорее всего на весь индекс для 8-ми миллионов записей всего лишь несколько единиц уникальных записей. В таком случае оптимальней линейно просканировать все записи в таблице, чем выбранные в индексе.

sergio_nsk ()

Как учить C++ и вообще, стоит ли?

sergio_nsk - ну ты сказал - это же timestamp - он ОЧЕНЬ редко совпадает. 2автор - а зачем тебе делать индекс по imestamp? Создай себе int id autoincrement и юзай наздоровье.

Llama ()

Как учить C++ и вообще, стоит ли?

2sergio_nsk - я извиняюсь. очень сильно ступил.

Llama ()

Re: MySQL и индексация....

Мда, давно комп не включал... Просто иногда есть задачи выбрать данные за определённый промежуток времени.. Так вот хотелось бы чтобы эти данные выбирались побыстрее....

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.