我有两列帐户号码和客户id。一个客户可以有多个帐户,但一个帐户不能有多个客户。
我已经将一个包含account\ num及其对应的customer\ id的文件通过 LOAD DATA INFILE
命令。现在我试图通过查询验证在一个文件中多次出现的任何帐户是否在两个不同的行中具有相同的customer\u id或不同的customer\u id。
要求:我想返回那些帐户已经来了多次,但有不同的客户ID
我试过分组,但没有达到预期的效果。这是我的查询,没有给出期望的结果
SELECT ACCOUNT_NUM,UNIQUE_CUSTOMER_ID,COUNT(UNIQUE_CUSTOMER_ID)
FROM LINKAGE_FILE
GROUP BY ACCOUNT_NUM, UNIQUE_CUSTOMER_ID
HAVING COUNT(ACCOUNT_NUM) > 1 AND COUNT(UNIQUE_CUSTOMER_ID) = 1;
希望我明白。
3条答案
按热度按时间p8ekf7hl1#
你可以用
EXISTS
:但是,您也可以使用查询进行聚合:
这样,你只能得到
ACCOUNT_NUM
有两个或更多CUSTOMER_ID
s。42fyovps2#
您只需使用
COUNT(DISTINCT..)
每account_num
并过滤掉计数大于1的情况,在HAVING
条款:c0vxltue3#
将客户支票放入一个join查询中,如下所示