我有一条语句:
select * from homeifo where xiaoquname like '%%'
and quyu like '%%'
and (price between '' and '')
and (mianji between '0㎡' and '150㎡') order by time desc;我执行了一下 结果什么都没有搜出来 可是范围里确实有这样的数据
我把字段面积改成空值 仍然什么都没有搜出来但是我把between的语句删除掉就能搜出来了可能是like语句和between不能放在一起吧请问各位大哥,这个问题怎么才能解决呢?
select * from homeifo where xiaoquname like '%%'
and quyu like '%%'
and (price between '' and '')
and (mianji between '0㎡' and '150㎡') order by time desc;我执行了一下 结果什么都没有搜出来 可是范围里确实有这样的数据
我把字段面积改成空值 仍然什么都没有搜出来但是我把between的语句删除掉就能搜出来了可能是like语句和between不能放在一起吧请问各位大哥,这个问题怎么才能解决呢?
问题就出在这里:and (price between '' and '') 满足这个条件的除非price为0
and (mianji between '0㎡' and '150㎡')面积最好不要加上M2,用纯数字去比较
mianji between '0㎡' and '150㎡'----字符串不能这样用
这2个地方都有问题
select * from homeifo where xiaoquname like '%%'
and quyu like '%%'
and (price between '' and '')
and (cast(ltrim(rtrim(mianji)) as char) between '0㎡' and '150㎡')
order by time desc