簡體   English   中英

選擇計數大於1的記錄,其中一個字段具有多個值

[英]Select Records With a Count of greater than 1 Where a field has multiple values

我在嘗試選擇具有VARCHAR類型的字段(invH.CODE)具有不同值的記錄時遇到問題。 例如,如果有2個不同的代碼,例如“ PLCH”和“ ABCD”。 下面是我到目前為止的SQL:

SELECT invH.INVOICE_NO
FROM SCHEMA.INVOICE_H invH
WHERE invH.STATUS = 'X'
GROUP BY invH.INVOICE_NO
HAVING COUNT (DISTINCT invH.CODE) > 1

我正在嘗試選擇存在一個實例的記錄,在該實例中存在該字段的兩個不同值(一條記錄中該字段可以有多個值)。 我不確定如何從語法上做到這一點。 請讓我知道獲取此信息的任何有效方法。

我正在使用DB2 / AIX64版本9.5.3。

我認為,如果您使用表之間的自聯接來獲取值,否則您需要使用子查詢來解決它。 如果加入,我認為下面的查詢應該工作

SELECT DISTINCT invH1.INVOICE_NO
FROM SCHEMA.INVOICE_H invH1 , SCHEMA.INVOICE_H invH2
WHERE invH1.STATUS = invH2.STATUS
and invH1.INVOICE_NO = invH2.INVOICE_NO
and invH1.STATUS = 'X'
and invH1.CODE <> invH2.CODE

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM