如何选择有限数量的组

时间:2017-10-17 13:06:32

标签: sql db2

我正在为ControlDesk / Maximo开发BIRT报告,我需要显示最多请求的故障单组。

我知道如何在DB2查询中按组选择有限数量的票证,但这不是我需要的。这只是计数最多的前十名组(门票类)

谢谢你

到目前为止,我的SQL没有显示我想要的内容,如:

    select tktemplate.description as tk_description, sr.description as sr_description, sr.reportdate, sr.templateid from sr inner join tktemplate on sr.templateid = tktemplate.templateid GROUP BY sr.templateid, sr.reportdate, tktemplate.description, sr.description ORDER BY sr.templateid fetch first 10 rows only

但它只显示了总共10个第一行,而不是每组的第一行

2 个答案:

答案 0 :(得分:0)

在查询结尾处添加此内容:

ORDER BY countvalue DESC
FETCH FIRST 10 ROWS ONLY

即。按计数降序排序。只获取10行。

FETCH FIRST是ANSI SQL。

答案 1 :(得分:0)

您有两种替代方法。要么给出相同的结果

ORDER BY tickets_count DESC LIMIT 10

ORDER BY tickets_count DESC FETCH FIRST 10 ROWS ONLY