sql问题 麻烦大家看看 为什么取不到值呢?

vb520530 2012-01-24 05:24:22


select doc_degree, master_degree from employee where doc_degree is null and doc_degree ='' and master_degree is not null and master_degree != '';

这句话有什么问题?为什么没有值呢?
...全文
55 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
我心飞翔 2012-01-24
  • 打赏
  • 举报
回复
doc_degree is null and doc_degree =''
上述条件是一对矛盾的条件,即永远不可能为真。
虫洞 2012-01-24
  • 打赏
  • 举报
回复
oracle基本没有doc_degree =''的用法
在oracle, 空字符串''被当做null处理的
你只要限
select doc_degree, master_degree from employee
where doc_degree is null
and master_degree is not null ;
xiaobluesky 2012-01-24
  • 打赏
  • 举报
回复

--doc_degree 应该不可能同时为null 和 '' 吧.下面这样应该可以
select doc_degree, master_degree from employee
where (doc_degree is null or doc_degree ='')
and master_degree is not null and master_degree != '';

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧