查找重复的帐户

时间:2019-05-04 10:47:27

标签: mysql sql mysqli

由于帐户重复,我面临的数据有问题,我需要查找所有重复的帐户。例如

Main_account_number: XXXXXX | 
Duplicate_account_number: 00000XXXXXX.

找到了像这样的重复帐户,前缀为0。

我尝试使用子查询构建SQL,但这不起作用

select acct_num,
       (select acct_num
        from account_table
        where acct_num like '0000%'+X.acct_num) as dup_acct
from account_table as X;

预期:

acct_num|dup_acct
123455  |0000123455
455585  |000045585

1 个答案:

答案 0 :(得分:1)

这是您想要的吗?

select a.acct_num, a2.acct_num as duplicate_acct_num
from account_table a join
     account_table a2
     on a2.acct_num = concat('0000', a.acct_num);

或者,如果0的数量可以变化:

     on a2.acct_num regexp concat('^0+',  a.acct_num, '$');