sql优化

pengzhistar 2009-10-29 10:44:48
我的sql语句如下
select * from t1 where to_char(kf_date,'yyyy-mm') = '2009-09' AND kf_caller NOT IN
(select kf_caller from t1where to_char(kf_date,'yyyy-mm') = '2009-10' )

也就是本表查询 查找9月数据没在10月的
...全文
42 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengzhistar 2009-10-29
  • 打赏
  • 举报
回复
关联 好像是我丢了个括号! 汗颜
pengzhistar 2009-10-29
  • 打赏
  • 举报
回复
真的吗 ?难道是8I的原因报错 ? 还有你用的外关联 我早就试过了 不行 报错的!
iqlife 2009-10-29
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 cosio 的回复:]
in 和 exists在效率是有差异!你可以先试试在说!
[/Quote]
UP
cosio 2009-10-29
  • 打赏
  • 举报
回复
select aa.kf_caller FROM 
(select * from t1 a where to_char(kf_date,'yyyy-mm') = '2009-09') AA,
(select kf_caller from t1 b where to_char(kf_date,'yyyy-mm') = '2009-10' ) BB
WHERE AA.kf_caller=BB.kf_caller(+) and BB.kf_caller IS NULL
cosio 2009-10-29
  • 打赏
  • 举报
回复
in 和 exists在效率是有差异!你可以先试试在说!
pengzhistar 2009-10-29
  • 打赏
  • 举报
回复
... 1lou 无语
cosio 2009-10-29
  • 打赏
  • 举报
回复
select * from t1 where to_char(kf_date,'yyyy-mm') = '2009-09' AND kf_caller NOT exists
(select kf_caller from t1where to_char(kf_date,'yyyy-mm') = '2009-10' )

17,090

社区成员

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

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