Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.08.07;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "Базы";
Текущий архив: 2003.08.07;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
7-20819
revo
2003-05-26 16:14
2003.08.07
ReadFile(Com,Buffer,Size,Received,Nil) всегда True


14-20800
Stas
2003-07-21 14:00
2003.08.07
IP Адрес


3-20384
azdesign
2003-07-15 00:25
2003.08.07
Чем открыть файлы .dta,.frm,.idx


14-20687
Карелин Артем
2003-07-23 10:51
2003.08.07
Хорошие обучающие материалы по C++. Где взять?


14-20749
Ahmad K
2003-07-15 23:18
2003.08.07
Можноли





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский