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

Вниз

Хочу быструю сортировку   Найти похожие ветки 

 
Punch   (2005-12-26 16:07) [0]

Все выборки из БД идут через ХП. В гриде делаеть сортировка по любому полю. Соответсвенно получается что-типа
select * from MY_PROCEDURE
order by filed1, field2...

план строится не по индексам, предложите, что-нить плз


 
Desdechado ©   (2005-12-26 16:13) [1]

делать сортировку на клиенте в ClientDataSet
особенно здОрово, что обращаться к БД всего 1 раз, а не на каждый чих
плохо, если выборка большая - читаться будет целиком, только потом сортироваться


 
Punch   (2005-12-26 16:15) [2]

не пойдет объем данных - велик, фетч - долго.

надо серверную сортировку.


 
Sergey13 ©   (2005-12-26 16:19) [3]

2 [2] Punch   (26.12.05 16:15)
ИМХО - ты странного хочешь.


 
Vlad ©   (2005-12-26 16:24) [4]


> Punch   (26.12.05 16:15) [2]


> надо серверную сортировку.

Серверная сортировка без индексов будет медленной, как ни крути...


 
Punch   (2005-12-26 16:31) [5]

короч, смысл оптимизировать

select * from MY_PROCEDURE
order by filed1, field2...

Работал ли кто-нить с DSQL может с его помощью можно.


 
Desdechado ©   (2005-12-26 16:34) [6]

чтобы рыбку съесть, надо в воду лезть


 
Sergey13 ©   (2005-12-26 16:35) [7]

2[5] Punch   (26.12.05 16:31)
>короч, смысл оптимизировать
А как оптимизировать то? Ну перепиши ORDER BY на filed2, field1... в программе? Может лучше Where оптимизировать для исключения "объем данных - велик, фетч - долго."


 
Punch   (2005-12-26 16:45) [8]

where - оптимизирован на все 100 %

что щас сделано
написано 3 ХП
- MY_PROCEDURE_ORDER_DEFAULT
- MY_PROCEDURE_ORDER_NUMBER
- MY_PROCEDURE_ORDER_NAME

у MY_PROCEDURE есть вх парам - SORTING
если SORTING = 0 то выполняю MY_PROCEDURE_ORDER_DEFAULT(без сорт) по индексу ID
если 1 - то MY_PROCEDURE_ORDER_NUMBER (по коду) по индексу NUMBER
если 2 - то MY_PROCEDURE_ORDER_NAME (по имени) по индексу NAME

если сортировка по номеру или по имени или без сортировки - то запускаю  
одну из трех ХП - все быстро

но есть поля в сетке и другие, так вот они идут по
select * from MY_PROCEDURE
order by filed1, field2...


 
Johnmen ©   (2005-12-26 16:48) [9]

>Punch  

Тебе уже сказали, что ты ищешь черную кошку в темной комнате. Притом, что её там нет.
Что не понятно?


 
Punch   (2005-12-26 16:57) [10]

Удалено модератором
Примечание: Так и говорим


 
Johnmen ©   (2005-12-26 17:12) [11]

Так и говорим: ТЕБЕ помочь не можем.


 
evvcom ©   (2005-12-26 17:19) [12]


> короч, смысл оптимизировать

Я так понимаю смысл не оптимизировать, а все-таки выполнить запрос и сортировку, выбранную пользователем, на сервере, при этом не писать много лишнего кода. Действительно это можно сделать с помощью DSQL, не знаю только есть ли он на птице. Наверное, есть.



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

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

Наверх




Память: 0.49 MB
Время: 0.059 c
11-1119933735
Василий
2005-06-28 08:42
2006.02.19
Сдвиг элементов TreeView меньше system-defined minimum


2-1138663886
kizam
2006-01-31 02:31
2006.02.19
print screen


15-1138629674
Ega23
2006-01-30 17:01
2006.02.19
До чего-же гениальное описание воздушного боя!


15-1138651084
Eraser
2006-01-30 22:58
2006.02.19
ADSL2+ и модем DLink 500T ... прошивка


1-1137550952
джонни
2006-01-18 05:22
2006.02.19
Регистрация "протокола" / обработчика