0
私はMYSQLにはかなり新しく、group_concatステートメントで少し助けが必要です。私は同じ売り手と商人の組み合わせ、それが繰り返される回数のカウントと一緒に異なるのCustomerIDsを持っているすべての項目について、以下の表MYSQl - Group_Concat内の要素の数
Seller Merchant CustomerID
S1 M1 C1
S1 M1 C1
S1 M1 C2
S1 M1 C3
S1 M1 C4
S2 M2 C5
S2 M2 C6
S3 M3 C6
を持っています。
group_concatを使用して一意の顧客IDをカウントできますが、カウントを取得できません。私は以下の結果
Seller Merchant CustomerID COUNT_OF_CUSTIDS
S1 M1 C1,C2,C3,C4 4
S2 M2 C5,C6 2
を与える
SELECT * , LENGTH(CUSTIDS) - LENGTH(REPLACE(CUSTIDS,',',''))+1 AS COUNT_OF_CUSTIDS
FROM (SELECT SELLER, MERCHANT, GROUP_CONCAT(CUSTOMERID SEPARATOR '|') AS CUSTIDS
FROM TABLE
GROUP BY SELLER, MERCHANT
HAVING COUNT(DISTINCT CUSTOMERID) >1
)
私が望むのに対し、あなたはカウントを取得するためにseller
/merchant
/customerid
レベルで最初の集計に必要
Seller Merchant CustomerID COUNT_OF_CUSTIDS
S1 M1 C1(2),C2(1),C3(1),C4(1) 4
S2 M2 C5(1),C6(1) 2