我们在对比系统目前存在的生日与身份证的时候会问,怎么只取其中值的特定位置,获得对比结果。 例如我们有一个值是123456789,那么我们怎么只显示4567呢?
SELECT
... ...
,convert(varchar, table1.[BirthDate], 112) as SystemBD
,substring(table2.ResidentialID,7,8) AS RBD
From Database1
Where SystemBD != RBD AND table2.ResidentialID like '__________________'
我们可以参考w3schools 的介绍。 也就是,从身份证第7位起,长度为8位。注意,他和程序中的index不一样,开始第一个字符就是1,而不是0。