读书人

字符串匹配解决思路

发布时间: 2012-04-11 17:42:33 作者: rapoo

字符串匹配
有两个表:a,b
a 有一个列c1的内容为:2008
b有一个列c2的内容为:2008;
问题:写一个sql语句,如何找到b表里的c2去掉“;”后的值与a表中的c1相等的记录集
即:2008=2008,就是找一个什么函数把c2的“;”去掉,然后和c1去匹配?
列的内容均为英文输入方式下的字符

[解决办法]


select *
from a,b
where b.c2 like a.c1 '_';

== 思想重于技巧 ==
[解决办法]

SQL code
select a.*, b.*from a     inner join b on a.c1 + ';' = b.c2--或select a.*, b.*from a     inner join b on a.c1 = replace(b.c2,';','')--或 select a.*, b.*from a     inner join b on a.c1 = left(b.c2,len(b.c2)-1) 

读书人网 >Informix

热点推荐