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

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

下面是我们可以用来在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

查询“从ORDERS GROUP按INVOICE_ID选择SELECT INVOICE_ID

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

INVOICE_ID
Z451189
Z225184