读书人

关于15位身份证和18位身份证相等的有关

发布时间: 2012-02-22 19:36:55 作者: rapoo

关于15位身份证和18位身份证相等的问题
有两张表,由于输入时间的关系,每张表中的身份证号都存在15位和18位的问题,又由于同名同姓的问题,只能通过身份证号来选出同时在两张表中都存在的人,

select from table1 inner join table2 on talbe1.identificationNo=table2.identificationNo

这时同一个人如果在两个表中身份证号位数不相同就选不出来,

请高手之交,怎样能解决这个问题?????不胜感谢!!

[解决办法]
select a.name from table1 a,table2 b where a.identificationNo=b.identificationNo or (substring(a.identificationNo,1,6)=substring(b.identificationNo,1,6) and (substring(a.identificationNo,9,8)=substring(b.identificationNo,11,8) or substring(a.identificationNo,11,8)=substring(b.identificationNo,9,8)))

读书人网 >SQL Server

热点推荐