编写一个DB2查询,找出ORDERS DB2表中所有重复的INVOICE_ID?


可以使用GROUP BY与HAVING子句以及COUNT函数的组合来查找ORDERS DB2表中重复的INVOICE_ID。GROUP BY将使我们能够按发票分组结果,而COUNT函数将使我们能够计算每个组中出现的次数。我们可以在HAVING子句中使用谓词来过滤计数大于一的组的结果。

以下是我们可以用来查找ORDERS DB2表中重复发票的SQL查询。

示例

SELECT INVOICE_ID FROM ORDERS
   GROUP BY INVOICE_ID
   HAVING COUNT(INVOICE_ID) > 1

例如,如果我们有如下所示的ORDERS DB2表。

ORDER_ID
INVOICE_ID
IRN22345
Z451189
IRN89767
Z451189
IRN67331
Z955189
IRN56902
Z225184
IRN99781
Z896671
IRN09863
Z225184

查询“SELECT INVOICE_ID FROM ORDERS GROUP BY INVOICE_ID

HAVING COUNT(INVOICE_ID) > 1”将返回以下结果。

INVOICE_ID
Z451189
Z225184

更新于:2020-12-01

980 次浏览

启动您的职业生涯

完成课程获得认证

开始学习
广告