Вопрос SQL-запроса, найти максимальный результат - PullRequest
1 голос
/ 27 апреля 2011

Я пытаюсь создать запрос, который находит одну строку с самым высоким значением.Я сейчас работаю в среде Oracle 10G.

Сначала я создал этот запрос, в котором перечислены количества

SELECT aname, sum(rhowmuch * rhowoften) AS Quantity
FROM ration
GROUP BY ration.aname;

ANAME        QUANTITY
---------- ----------
BLACKIE            16
CONRAD           29.4
MEO                28
MOLLY            37.7
CHUBBLES           75
BOSS             63.7
JEFFREY          29.4
FANNY              56
SUZY               21
ZEO              17.5
MORRIS             21

ANAME        QUANTITY
---------- ----------
SALLY              21
LEO                40
SAM                28

14 rows selected.

Но я не могу найти способ создать один запрос, которыйтянет максимальное количество оттуда.Есть предложения?

Ответы [ 2 ]

2 голосов
/ 27 апреля 2011

Использование:

SELECT x.aname, x.quantity
  FROM (SELECT r.name, SUM(r.rhowmuch + r.rhowoften) AS quantity
          FROM RATION r
      GROUP BY r.aname
      ORDER BY quantity DESC) x
 WHERE ROWNUM = 1

Для получения дополнительной информации об использовании ROWNUM см .: http://blog.lishman.com/2008/03/rownum.html

1 голос
/ 27 апреля 2011
SELECT aname, sum(rhowmuch * rhowoften) AS Quantity
FROM ration
GROUP BY ration.aname
order by Quantity desc
limit 1
...