Welcome 微信登录

首页 / 数据库 / MySQL / Oracle三层嵌套查询的bug

如下的SQL语句查询不到任何记录,尽管数据库中有符合条件的记录。这是Oracle三层查询的bug。select cb.* from mw_app.t_cb cb where cb.obj_id in (select cba.channel_id from mw_app.t_current_business_alarm cba where cba.business_id in (select b.business_id from mw_app.t_rt_business b where b.alarm_state <> "0" and b.business_code = "1") )要想查询到结果,就需要更改sql语句,可以改成select cb.* from mw_app.t_cb cb Left Join (select alarm.channel_id from mw_app.t_current_business_alarm alarmwhere alarm.business_id in ( select business_id from mw_app.t_rt_business where alarm_state <> "0" and business_code = "1" )) b On cb.obj_id=b.channel_id或者select cb.* from mw_app.t_cb cb Left Join (select alarm.channel_id from mw_app.t_current_business_alarm alarm left join mw_app.t_rt_business biz on alarm.business_id = biz.business_idwhere (biz.alarm_state <> "0" and biz.business_code = "1") ) b On cb.obj_id=b.channel_idOracle中交集 INTERSECT 的使用Oracle如何实现跨库查询相关资讯      Oracle基础教程 
  • Oracle块编程返回结果集详解  (11/10/2013 10:45:58)
  • Oracle基础教程之设置系统全局区  (08/22/2013 14:24:00)
  • Oracle基础教程知识点总结  (06/18/2013 07:43:32)
  • Oracle基础教程之tkprof程序详解  (10/22/2013 11:49:50)
  • Oracle基础教程之sqlplus汉字乱码  (07/18/2013 16:30:00)
  • Oracle 管理之 Linux 网络基础  (02/16/2013 18:37:35)
本文评论 查看全部评论 (0)
表情: 姓名: 字数