![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
SQL запрос [MSSQL]
dimaL © (2007-07-04 08:58:00)Требуется составить запрос, выбирающий из таблицы строку с наибольшим значением атрибута, но таким, чтобы он был меньше некоторого другого атрибута. (Желательно в один запрос)
ЮЮ (2007-07-05 04:36:00) [1]> выбирающий из таблицы строку с наибольшим значением атрибута,
> но таким, чтобы он был меньше некоторого другого атрибута
пара вопросов
1) другой атрибут относится именно к той строке, в которой максимум? А если таких строк несколько?
2) если в строке с максимальным значением второе условие не выполняется что возвращать?
а) ничего
б) другую строку с возможно меньшим, чем максимальное значением, но меньшим другого атрибута
MsGuns (2007-07-04 19:08:00) [2]select a,avg(c),max(b) as b
from t1
group by a
having max(b)<avg(c)
order by b,a
DrPass (2007-07-04 13:44:00) [3]
> а не через having разве? если агрегаты используются?
А ты где-то здесь увидел group by?
_MaSteR_NN_ (2007-07-04 13:07:00) [4]А так как я показал нельзя? ))
stud (2007-07-04 10:27:00) [5]_MaSteR_NN_ (04.07.07 9:20) [3]
select max(атрибут) from таблица where атрибут < другой_атрибут
а не через having разве? если агрегаты используются?
_MaSteR_NN_ (2007-07-04 09:20:00) [6]нда...
select max(атрибут) fromтаблица whereатрибут < другой_атрибут
stud (2007-07-04 09:08:00) [7]и в чем проблема????
сделать выборку по нужному атрибуту, отсортировать нужным образом набор и выбрать первую запись, например
Johnmen (2007-07-04 09:04:00) [8]Кому требуется?