test01表的数据如下:
test02表的数据如下:
使用left join 关联test01和test02时,带入name字段匹配不出数据:
select t1.id,t1.name,t2.id,t2.name from test01 t1 left join test02 t2 on t1.id=t2.id where t1.name!=t2.name;
使用如下语句可以查询出结果
with t1 as(select id,isnull(name,'0') name from test01)
,t2 as(select id,isnull(name,'0') name from test02)
select t1.id,t1.name,t2.id,t2.name from t1 left join t2 on t1.id=t2.id where t1.name!=t2.name;
sqlserver中null不能拿来作为匹配条件,只能用is null或者is not null
使用in和not in匹配时也不能出现Null