可能重复:
按 DB2 排列的顶级组
我已经尝试了几个小时,但无法使用 DB2 执行我想要的查询。从表公司和用户我有每个公司/用户的以下门票数量信息
查询使用:
SELECT T.USER, COUNT(T.USER) AS QUANTITY, T.COMPANY FROM TICKET T
INNER JOIN COMPANY P ON P.COMPANY = T.COMPANY
GROUP BY (T.USER, T.COMPANY) ORDER BY QUANTITY DESC
user company quantity
------------ ------------ ------------
mark nissn 300
tom toyt 50
steve kryr 80
mark frd 20
tom toyt 120
jose toyt 230
tom nissn 145
steve toyt 10
jose kryr 35
steve frd 100
这应该是结果(每个公司的顶级用户)
user company quantity
------------ ------------ --------------------------------
mark nissn 300
jose toyt 230
steve frd 100
steve kryr 80
如您所见,公司中有许多用户,每个公司的用户数量不同。结果应该得到每个公司数量最多的用户。即:公司 nissn 它有 2 个用户,每个用户都有(用 300 标记)和(用 145 标记的 tom)所以它应该给我最高的用户,用 300 标记。toyt、frd、kryr 也是如此。我在查询中需要所有这些。
我想知道这是否可以在查询中实现,或者我需要创建一个存储过程?