Вниз
Скачать: CL | DM;

SQL выбор максимального значения из нескольких полей   Найти похожие ветки 

← →
Денис Курьин ©   (2003-07-16 11:38) [0]

Подскажите пожалйуста, как выбрать максимальное значение из нескольких числовых полей?
Выполняю запрос
select max(f1), max(f2), max(f3) from Table1
получаю три поля с числами, а как мне из этих трех полей выбрать наибольшее значение


← →
Johnmen ©   (2003-07-16 12:46) [1]

В приложении...


← →
Zacho ©   (2003-07-16 12:49) [2]

Средствами LocalSQL, насколько знаю, никак. Только программно, после выполнения запроса.
Например, так.
MyQuery.Open;
MaxValue:=MyQuery.Fields[0].Value;
if MaxValue<MyQuery.Fields[1].Value then MaxValue:=MyQuery.Fields[1].Value;
if MaxValue<MyQuery.Fields[2].Value then MaxValue:=MyQuery.Fields[2].Value;


← →
KDS ©   (2003-07-16 12:55) [3]

:-))) А паскаль зачем?
Потом программно ручками
var f1,f2,f3,maxF:Extended;
begin
with Query do begin
Close;
Unprepare;
SQL.Clear;
SQL.Add("select max(f1), max(f2), max(f3) from Table1");
Prepare;
Open;
f1:=Fiels[0].AsFloat;
f2:=Fiels[1].AsFloat;
f3:=Fiels[2].AsFloat;
Close;
end;
if f1>f2 then maxF:=f1 else maxF:=f2;
if maxF<f3 then maxF:=f3;
end;


← →
Gerakl   (2003-07-16 17:57) [4]

Попробyй так:

select max(fld)
from
(
(select max(f1) fld from Table1)
union
(select max(f2) fld from Table1)
union
(select max(f3) fld from Table1)
)


← →
Johnmen ©   (2003-07-16 21:46) [5]

>Gerakl (16.07.03 17:57)

И пробовать не стоит...:)



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
14-20753
Yuraz
2003-07-17 15:49
2003.08.07
Предлагаю сделать форум в рамках существ. по JavaBuilder


14-20665
J_S
2003-07-18 20:28
2003.08.07
Сокрытие программы от Task Manager в NT/2000/XP


7-20828
Fil
2003-05-26 18:03
2003.08.07
Не дать загрузить программу второй раз


4-20850
Yanis
2003-06-03 12:36
2003.08.07
Системное меню приложения.


3-20410
SoM
2003-07-16 16:06
2003.08.07
Rave




   Наверх