0
我正在處理客戶的銀行交易數據,我期望排除包含部分或全部客戶名稱的交易。 我的數據看起來像這樣:部分字符串匹配mysql
Table A:
Cust_ID |TxnDescription |
----------- |-------------------------------------|
C123------- |#######LIANDRI CORPORATION###########|
C123------- |#########LIANDRI#####################|
C123------- |############JEFF L###################|
C123------- |#########K.S. LI ANDRI###############|
C123------- |############XAN KRIEGOR##############|
C123------- |####AXON RESEARCH CORPORATION########|
C123------- |############FENTECH INCORPORATED#####|
C123------- |########PHAYDER CORPORATION##########|
C123------- |############IZANAGI CORPORATION######|
Table B:
Cust_ID |PromoterName |
--------------|-------------------------------------|
C123 |LIANDRI CORPORATION |
C123 |JEFF LIANDRI |
C123 |K S LIANDRI |
C123 |XAN KRIEGOR |
C324 |IZANAGI CORPORATION |
我的期望的輸出是:
TABLE: E
Cust_ID |TxnDescription |Fl_Exclude |
----------- |-------------------------------------|------------|
C123------- |#######LIANDRI CORPORATION###########|YES |
C123------- |#########LIANDRI#####################|YES |
C123------- |############JEFF LI ANDRI############|YES |
C123------- |#########K.S. LI ANDRI###############|YES |
C123------- |############XAN KRIEGOR##############|YES |
C123------- |####AXON RESEARCH CORPORATION########|NO |
C123------- |############FENTECH INCORPORATED#####|NO |
C123------- |########PHAYDER CORPORATION##########|NO |
C123------- |############IZANAGI CORPORATION######|NO |
我的方法這裏是表B中打破啓動子名稱轉換爲詞,如下所示:
TABLE: C
Cust_ID |PromoterNamePart |
--------------|-------------------------------------|
C123 |LIANDRI |
C123 |CORPORATION |
C123 |JEFF |
C123 |LIANDRI |
C123 |K S |
C123 |LIANDRI |
C123 |XAN |
C123 |KRIEGOR |
然後刪除重複以照顧歧義
TABLE: D
Cust_ID |PromoterNamePart |
--------------|-------------------------------------|
C123 |LIANDRI |
C123 |JEFF |
C123 |K S |
C123 |XAN |
C123 |KRIEGOR |
在上加入一個和d CUST_ID和使用D.PromoterNamePart上A.TxnDescription一個像條款,我希望得到我的輸出。
現在,我堅持把表B分解爲C,因爲單個字母的連續縮寫將被視爲一個單詞。
任何想法如何解決這個問題或任何替代解決方案將深表感謝。謝謝。