isnull
SELECT ISNULL(NULL,0) WHERE ISNULL(NULL,0)=0
SELECT ISNULL(' ',0) WHERE ISNULL(' ',0)=0
SELECT ISNULL(NULL,0) WHERE ISNULL(NULL,0)='0'
SELECT ISNULL(' ',0) WHERE ISNULL(' ',0)='0'
上面sql看似没有多大区别,但是当你踩过坑之后就明白还是有区别的。
isnull(null,0)=0 isnull(null,0)='0'都是对的
但是isnull(' ',0)=0是对的 isnull(' ',0)='0'就不对了
测试一下就知道:
如上图 第一条 数据就等于0 第二条是等于空的(但是加上等于0的条件也可以查出结果) 第三条也没问题,第四天明显等于字符串‘0’时是不能查到数据的。