日期:2014-05-18  浏览次数:20429 次

当字段为null时如何判断字段相等
有两表t1,t2 结构一样


要查询出他们字段   f1,f2,f3   都相等的记录,并且如果对于某个字段都为null 即没有输入,也看着是相等的, 用普通的查询 t1.f1       =     t2.f1   来查询不成功,当为null的时候 他们看着不相等,
我的要求,当两表某记录字段值都为null的时候 也看着相等,SQL如何写

------解决方案--------------------
ISNULL(t1.f1, ' ') = ISNULL(t2.f1, ' ')
------解决方案--------------------
isnull(t1.f1, ' ')=isnull(t2.f1, ' ')
------解决方案--------------------
加上
SET ANSI_NULLS OFF
这句话再查询
------解决方案--------------------
ISNULL(t1.f1, ' ') = ISNULL(t2.f1, ' ')
------解决方案--------------------
isnull不能處理所有類型的字段

這句話是什麼意思

難道char型的null和int型的null在查詢結果中還有區別?
------解决方案--------------------
hellowork(一两清风)
你不知道一个数字类型= ' '时他会在数据里为0吗!!!!!
------解决方案--------------------
楼主的代码是可以的.
------解决方案--------------------
帅哥~~你知不知道你给的东西根本就是个错的!!!!看看标题吧!!!而isnull这个过程是LZ按你的错误方法走去时所碰到的另一个问题!!!!如果你有认识到~~就应该告之~~~!!!我之前也有多次说明!!!!可帅哥你还要在这个问题上纠缠!!还局部的CP我的话!!!
------解决方案--------------------
呵呵。
进步就得需要争论。
大家都学到东西才是真的。
------解决方案--------------------
厉害 好样的!