【小白】求解:' '(空格)在存储过程和pL/SQL sql window里的不同

behappy373 2011-01-25 03:48:43
存储过程里select count(*) from A where A.type=' ';可以查出数据
而在PL/SQL里,select count(*) from A where A.type=' '却无数据。都在同一数据库同一张表里。
这个是为什么呢?请各位大侠指导指导。。
...全文
107 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
心中的彩虹 2011-01-26
  • 打赏
  • 举报
回复
[Quote=引用楼主 behappy373 的回复:]
存储过程里select count(*) from A where A.type=' ';可以查出数据
而在PL/SQL里,select count(*) from A where A.type=' '却无数据。都在同一数据库同一张表里。
这个是为什么呢?请各位大侠指导指导。。
[/Quote]

试试

select length(type) from a

---看其结果就明白
QKForex 2011-01-26
  • 打赏
  • 举报
回复
区分下 ' ' 和''
在oracle数据库中' ' 代表长度为1的空串,但是''却代表null
这样解释应该理解吧
lxyzxq2008 2011-01-26
  • 打赏
  • 举报
回复
把数据贴出来啊,
这个无图无真相啊~
njlywy 2011-01-25
  • 打赏
  • 举报
回复
此事件比较灵异…
behappy373 2011-01-25
  • 打赏
  • 举报
回复
我再看看,那个空格那个肯定没写错,有可能存储过程中 那个A.type的值给转换了,我去看看
gelyon 2011-01-25
  • 打赏
  • 举报
回复
数据肯定是有的,且数据的值是大于等于0的!
behappy373 2011-01-25
  • 打赏
  • 举报
回复
没有写错。。这是真的。。
  • 打赏
  • 举报
回复

select count(*) from A where A.type=' '
--你会不会写错了
select count(*) from A where A.type='' --注意' '和''的差别
Oraclefans_ 2011-01-25
  • 打赏
  • 举报
回复
minitoy 2011-01-25
  • 打赏
  • 举报
回复
不可能

17,082

社区成员

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

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