sql语句模糊查询怎么查到空内容的数据
以下是我的sql语句:select*from(selectb.*,s.suppliername,rownumrnfrombillb,supplierswheres.sup...
以下是我的sql语句:
select * from (select b.*,s.suppliername,rownum rn from bill b,supplier s where s.supplierid=b.supplierid and goodsname like '%' and checked like '%') t where t.rn>=(1 ) and t.rn<=12
结果查询到的都是有内容的数据,但是不显示那些goodsname 值为""和checked 值为""的数据,请问我该用什么通配符来查询到值为""的内容呢 展开
select * from (select b.*,s.suppliername,rownum rn from bill b,supplier s where s.supplierid=b.supplierid and goodsname like '%' and checked like '%') t where t.rn>=(1 ) and t.rn<=12
结果查询到的都是有内容的数据,但是不显示那些goodsname 值为""和checked 值为""的数据,请问我该用什么通配符来查询到值为""的内容呢 展开
展开全部
这个好办啊。改成下列语句形式:
goodsname like '%' and checked like '%' 改为
nvl(goodsname,'0') like '%' and nvl(checked,'0') like '%'
goodsname like '%' and checked like '%' 改为
nvl(goodsname,'0') like '%' and nvl(checked,'0') like '%'
更多追问追答
追问
嗯,你的回答靠谱些,我刚才也百度了一下val什么意思,可是查询结果仍然没有查到goodsname为""和
checked为""的内容
追答
不是val,是 n v l 是 N V L -- NVL(列,值) -- 意思是如果列是空,则取后面值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
nvl(goodsname,'') ='' and nvl(checked,'') =''
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select * from (select b.*,s.suppliername,rownum rn from bill b,supplier s where s.supplierid=b.supplierid ) t where t.rn>=(1 ) and t.rn<=12
这样试试
这样试试
追问
大哥,我要的是模糊查询,你写like了吗?
我的意思是占位符这块有值时查到数据,
like后面的通配符没值照样可以查到空内容的数据!!!!!!!!
看到题再答!!!!!!!!!!!!!!!!!
追答
我都服了 拜托啊
通配符就是代表字符 后面不写就是代表全部
怎么会查到空呢
再说 and goodsname like '%' and checked like '%'
这俩条件写和不写没啥区别啊
like '%'查出来的 一定是有数据的啊
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询