我有一种情况,我必须从表中找到匹配的字符串。
我使用了一个使用substr和length的自联接查询来比较字符串。
数据库是Teradata。
SELECT T1.*,T2.*
FROM TABLE T1,TABLE T2
WHERE
T1.ID= T2.ID
AND T1.DATE= T2.DATE
AND T1.SYSTEM = 'ORCL'
AND T2.SYSTEM = 'TER'
AND SUBSTR(T1.NAME,1,5) = SUBSTR(T2.NAME,1,5);
TABLE
ID DATE NAME SYSTEM
1 SYSDATE TEST ORCL
1 SYSDATE @# TEST TER
输出:
ID DATE NAME SYSTEM ID_1 DATE_1 NAME_1 SYSTEM_!
1 SYSDATE TEST ORCL 1 SYSDATE '@#TEST' TER
当我使用substr 1到5时,由于得到空格,特殊字符和可逆名称,我无法获得准确的结果。
我需要一个可以处理任何情况的查询,以比较列中的字符串。