Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.09.30;
Скачать: CL | DM;

Вниз

Почему в Firebird сбивается сортировка в индексе   Найти похожие ветки 

 
kyro   (2007-09-05 17:04) [0]

Есть таблица музыки.
Эта таблица как очередь . Туда добавляются записи как бы в конец таблицы , а первая запись проигрыватся и после удаляется .
Таблица проиндексирована по полю Id . У  индекса есть сортировка по возрастанию.

Так вот переодически возникает проблема в том что Select * from muzik
возвращает данные в таком виде :

ID      NAME      ISPOLNIT
       203      5 060       175
       204      5 061       175
       202      5 059       175
       205      5 062       175
       206      5 064       175


Хотя должен вернуть
в порядке возрастания поля ID .

Скажите из за чего это может быть ?


 
Германн ©   (2007-09-05 17:09) [1]


> Скажите из за чего это может быть ?
>

Из-за не знания SQL


 
kyro   (2007-09-05 17:17) [2]


> Германн ©   (05.09.07 17:09) [1]
>
> > Скажите из за чего это может быть ?
> >
>
> Из-за не знания SQL


Попрошу не умничать . Я прекрасно понимаю что можно написать order by


 
kyro   (2007-09-05 17:18) [3]

У меня предположение что оптимизатор запросов (а такой по идее должен быть в Firebird) выбирает поиск данных не по индексу , а просто перебором !
Вот мне  и интересно так ли это ?


 
Германн ©   (2007-09-05 17:47) [4]


> выбирает поиск данных не по индексу , а просто перебором
> !

А с какого боку ему выбирать по индексу, если ты этого не попросил?


 
DrPass ©   (2007-09-05 18:08) [5]


> У меня предположение что оптимизатор запросов (а такой по
> идее должен быть в Firebird) выбирает поиск данных не по
> индексу , а просто перебором !

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


 
kyro   (2007-09-05 18:20) [6]


> DrPass ©   (05.09.07 18:08) [5]
>
> > У меня предположение что оптимизатор запросов (а такой
> по
> > идее должен быть в Firebird) выбирает поиск данных не
> по
> > индексу , а просто перебором !
>
> Логично. Т.к. искать данные по индексу в том случае, если
> все равно надо возвращать абсолютно все записи таблицы -
>  крайне глупо с точки зрения производительности.


Тогда встает вопрос отчего перодически он выдает данные именно так как надо ?


 
Desdechado ©   (2007-09-05 18:32) [7]

Оттого, что записи хранятся так, как удобно серверу, и также выбираются.
Совпадение и все.
Хочешь упорядочить, сообщи об этом серверу.


 
kyro   (2007-09-05 18:42) [8]

Ну я вообщем то так и думал . Всем спасибо.



Страницы: 1 вся ветка

Текущий архив: 2007.09.30;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.031 c
15-1188556583
Ega23
2007-08-31 14:36
2007.09.30
С неклиентской частью разобрались


1-1184536038
временный Чайник
2007-07-16 01:47
2007.09.30
Сенсорный монитор


15-1188462370
dimon2007
2007-08-30 12:26
2007.09.30
ODBC Driver MySQL > 4.1


15-1188992537
Desdechado
2007-09-05 15:42
2007.09.30
В чем смысл жизни?


2-1189066158
Fleg
2007-09-06 12:09
2007.09.30
методы