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

Вниз

local SQL запрос: выбрать 5 максимальных   Найти похожие ветки 

 
фл   (2002-06-14 11:28) [0]

Никак не получается сделать запрос. Надо получить значения field1, где field2 по этой же записи -- одно из 5 максимальных значений по этому полю в бд. Причем если, скажем, максимальные значения field2 - 33, 31, 28, 27, 26, 26, 26, то должно получиться 7 значений field1. Надеюсь понятно почему.
Можно ли вообще сделать это одним запросом?


 
fnatali ©   (2002-06-14 11:42) [1]

Мне кажется, что одним запросом не получится.
query1.sql.clear;
query1.sql.add("select field1 from table order by field2 desc");
query1.open;
query1.first;
for i:=1 to 7 do
begin
делай что тебе нужно с выбранными записями
query1.next;
end;


 
Val ©   (2002-06-14 11:47) [2]

думаю врядли получится одним запросом. Предлагаю такой вариант:
select distinct field2 from mytable
order by field2
затем в цикле по данному квери вытягиваете пять последних значений.
затем подставить полученные значения в параметрический запрос:
select field1 from mytable where field2 in(:par1,:par2,:par3,:par4,:par5)


 
Val ©   (2002-06-14 11:52) [3]

>fnatali © (14.06.02 11:42) сорри за небольшой плагиат :)), написал, увидел ваш совет, решил дописать:
>фл (14.06.02 11:28)
украду из совета fnatali © (14.06.02 11:42) то, где стормозил, первый запрос лучше отсортировать по убыванию и взять первые пять записей.



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
1-23623
rumata_lee
2002-06-25 17:35
2002.07.08
Активный компонент формы


1-23560
Феликс
2002-06-26 23:11
2002.07.08
Как сделать , чтобы filelistbox отоброжал вновь созд. файлы?


3-23514
Digitman
2002-06-17 16:32
2002.07.08
Неизвестная структура - вх.параметр IB UDF ?


3-23448
YUry
2002-06-14 13:36
2002.07.08
Подключение и работа с удаленным


1-23568
alena.svt
2002-06-26 21:34
2002.07.08
RunTime