我有以下SQL語句:使用COUNT()在WHERE子句
SELECT C.LINKED_TABLE_ID AS CLIENT_DIWOR, I.STATUS AS AML_STATUS, dbo.CLIENT_MASTER.CLIENTCODE
FROM AML_INFORMATION AS I INNER JOIN
dbo.COMM_ENTRY AS C ON C.NAME_ID = I.CONTACT_ID AND C.TABLE_ID = 'C' AND C.PRIMARY_FLAG = 'Y' INNER JOIN
dbo.CLIENT_MASTER ON C.LINKED_TABLE_ID = dbo.CLIENT_MASTER.DIWOR
WHERE I.CONTACT_ID = 234
AND I.[STATUS] = 'CC'
AND (CLIENT_MASTER.DIWOR = I.CONTACT_ID)
AND (CLIENT_MASTER.POSTING_STATUS <> '')
AND ((SELECT COUNT(CONTACT_ID) FROM AML_ID_DOCUMENT GROUP BY CONTACT_ID HAVING CONTACT_ID = 234) >1)
如果我運行這個它返回0的記錄,但是如果我刪除最後一個AND語句AND ((SELECT COUNT(CONTACT_ID) FROM AML_ID_DOCUMENT GROUP BY CONTACT_ID HAVING CONTACT_ID = 234) >1)
返回我期望的記錄。
是否有可能以這種方式使用COUNT()?順便說一句,在這個例子中的COUNT()返回2條記錄,如果我將它包含在SELECT語句中,我也會返回0條記錄。
任何人都可以指向正確的方向嗎?
在此先感謝。
不應該你的查詢haver一個FROM子句的地方? –
您是否在尋找聯繫人的存在,或者您是否在尋找聯繫人的存在位置,並且多次使用此聯繫人。 – TEEKAY
重新添加FROM子句,在複製和粘貼期間以某種方式錯過了 – Danny