/ / Microsoft AccessでJOINを使用するときに重複する値を識別する - sql、ms-access

JOINをMicrosoft Accessで使用するときに重複する値を特定する - sql、ms-access

私は顧客のための値を保持する2つのテーブルがあります。第1のテーブルは顧客の名前を保持し、第2のテーブルはトランザクションなどの顧客に関する情報を保持する。

最初のテーブルは次のようになります

CustomerID    Name
1             Joe
2             Jane

2番目のテーブルは次のようになります

TransactID    CustomerID    Reference
1             1             REF123
2             2             REF123
3             1             REF321

参照列とそれに属している顧客のすべての重複を識別できる必要があります。ジョー、ジェーン

私は現時点でのコードは次のように見えます

SELECT o.name, COUNT(p.reference) as RefCount
FROM (t_cust as o
INNER JOIN t_custprop as p
ON o.customerid = p.customerid)
GROUP BY o.name, p.reference
HAVING (COUNT(p.reference)>1)
ORDER BY o.name ASC

重複している可能性のある値がわからないので、上記のコードは顧客の名前と重複している可能性のある参照を返しません。

回答:

回答№1は1

あなたが数えているアイテムをグループ化すると、カウントは1になります。これは、あなたのhaving句によって取り除かれます。

SELECT o.name, p.reference
FROM t_cust o
INNER JOIN t_custprop p ON o.customerid = p.customerid
WHERE p.reference IN (
SELECT p2.reference
FROM t_custprop p2
GROUP BY p2.reference
HAVING COUNT(p2.customerid) > 1
)
ORDER BY o.name ASC