当前位置: 代码迷 >> 嵌入开发 >> 条件中0=0 0=1 0=%什么意思解决方法
  详细解决方案

条件中0=0 0=1 0=%什么意思解决方法

热度:2712   发布时间:2013-02-26 00:00:00.0
条件中0=0 0=1 0=%什么意思

select * from tb 
WHERE ((item_range = '0' and '0' = '0') or (item_range <> '0' and '0' = '%'))



------解决方案--------------------------------------------------------
这sql写的,直接select * from tb where item_range = '0'就行了吧
------解决方案--------------------------------------------------------
select * from tb
WHERE ((item_range = '0' and '0' = '0') or (item_range <> '0' and '0' = '%'))
等价于
select * from tb
WHERE ((item_range = '0' and true ) or (item_range <> '0' and false))
等价于
select * from tb
WHERE ((item_range = '0' ) or false)
等价于
select * from tb
WHERE item_range = '0'
------解决方案--------------------------------------------------------
上面的代码可能是为了判断多个条件而生成的语句。

有可能是这样的


select * from tb
WHERE ((item_range = @a and @a = '0') or (item_range <> '0' and '0' = '%'))
 
然后给@a赋值。自己猜的
------解决方案--------------------------------------------------------
0=0 在 where 的逻辑中就是 true
0=1 与 0=% 就是 false
  相关解决方案