ITPUB论坛-中国最专业的IT技术社区

 找回密码
 注册
查看: 285|回复: 17

[SQL] in用法怪异,难道是BUG??

[复制链接]
论坛徽章:
2
优秀写手
日期:2014-12-05 06:00:13秀才
日期:2015-09-14 10:08:30
发表于 2017-2-16 15:58 | 显示全部楼层 |阅读模式
select * from a  where  date in (select date'2016-8-2'  from dual ) 这能取到值
select * from a  where  date in ( select add_months(trunc(date'2016-8-2','yyyy')-1,level) from dual connect by level<=12) 这样也能取到值
select * from a  where  date in (select date'2016-8-2'  from dual  union all select add_months(trunc(date'2016-8-2','yyyy')-1,level) from dual connect by level<=12) 却只能取到2016-8-2日期的值  


招聘 : 系统分析师
论坛徽章:
472
版主9段
日期:2013-12-30 02:21:032014年新春福章
日期:2014-03-07 12:43:10马上有车
日期:2014-03-27 15:59:39马上有车
日期:2014-04-08 17:57:38技术图书徽章
日期:2014-04-21 10:26:402014年世界杯参赛球队: 伊朗
日期:2014-05-23 10:41:312014年世界杯参赛球队: 比利时
日期:2014-06-17 12:09:43itpub13周年纪念徽章
日期:2014-09-28 10:55:55itpub13周年纪念徽章
日期:2014-09-29 01:14:14马上加薪
日期:2014-02-19 11:55:14
发表于 2017-2-16 17:57 | 显示全部楼层
问题描述不清楚
“这样也能取到值”,不清楚

使用道具 举报

回复
招聘 : 系统分析师
论坛徽章:
472
版主9段
日期:2013-12-30 02:21:032014年新春福章
日期:2014-03-07 12:43:10马上有车
日期:2014-03-27 15:59:39马上有车
日期:2014-04-08 17:57:38技术图书徽章
日期:2014-04-21 10:26:402014年世界杯参赛球队: 伊朗
日期:2014-05-23 10:41:312014年世界杯参赛球队: 比利时
日期:2014-06-17 12:09:43itpub13周年纪念徽章
日期:2014-09-28 10:55:55itpub13周年纪念徽章
日期:2014-09-29 01:14:14马上加薪
日期:2014-02-19 11:55:14
发表于 2017-2-16 17:59 | 显示全部楼层
数据库版本是什么?不会是10.2.0.4以下的版本或者9.2.0.4以下的版本吧?

使用道具 举报

回复
论坛徽章:
2
优秀写手
日期:2014-12-05 06:00:13秀才
日期:2015-09-14 10:08:30
 楼主| 发表于 2017-2-16 18:24 | 显示全部楼层
的确是BUG啊,在11G上运行没问题

使用道具 举报

回复
论坛徽章:
450
秀才
日期:2015-08-18 09:49:27秀才
日期:2015-10-10 11:14:46秀才
日期:2015-10-10 11:14:46举人
日期:2015-09-09 10:34:21秀才
日期:2015-09-09 10:33:01秀才
日期:2015-09-09 10:33:01状元
日期:2015-09-09 10:34:21榜眼
日期:2015-09-09 10:34:21秀才
日期:2015-09-09 10:33:01秀才
日期:2015-09-09 10:33:01
发表于 2017-2-17 03:04 | 显示全部楼层
hu825065235 发表于 2017-2-16 18:24
的确是BUG啊,在11G上运行没问题

有问题的版本是什么? 12C还是10G?
比较一下在不同版本中的SQL计划。

使用道具 举报

回复
认证徽章
论坛徽章:
194
2016猴年福章
日期:2016-02-18 09:31:302016猴年福章
日期:2016-02-23 09:58:34猴赛雷
日期:2016-02-23 10:04:242017金鸡报晓
日期:2017-01-10 15:29:03技术图书徽章
日期:2016-09-27 14:58:552017金鸡报晓
日期:2017-02-08 14:09:13
发表于 2017-2-17 08:41 | 显示全部楼层
楼主贴一下你的执行结果;

使用道具 举报

回复
论坛徽章:
390
宝马
日期:2013-11-22 20:41:54马上加薪
日期:2014-02-19 11:55:14马上有钱
日期:2014-03-11 11:59:122014年世界杯参赛球队:喀麦隆
日期:2014-07-11 12:10:53马上有对象
日期:2014-04-09 16:19:542014年世界杯参赛球队: 洪都拉斯
日期:2014-06-25 08:25:55itpub13周年纪念徽章
日期:2014-09-28 10:55:55itpub13周年纪念徽章
日期:2014-10-01 15:27:22itpub13周年纪念徽章
日期:2014-10-09 12:04:18马上有钱
日期:2014-10-14 21:37:37
发表于 2017-2-17 08:45 | 显示全部楼层
a的结构没有,用date关键字当列名是错的

使用道具 举报

回复
论坛徽章:
2
优秀写手
日期:2014-12-05 06:00:13秀才
日期:2015-09-14 10:08:30
 楼主| 发表于 2017-2-17 09:04 | 显示全部楼层
newkid 发表于 2017-2-17 03:04
有问题的版本是什么? 12C还是10G?
比较一下在不同版本中的SQL计划。

版本是10g的,我换一个版本11gR2 正常

使用道具 举报

回复
论坛徽章:
2
优秀写手
日期:2014-12-05 06:00:13秀才
日期:2015-09-14 10:08:30
 楼主| 发表于 2017-2-17 09:08 | 显示全部楼层
〇〇 发表于 2017-2-17 08:45
a的结构没有,用date关键字当列名是错的

大神啊,那个date 只是替代名,不是真正列名

使用道具 举报

回复
论坛徽章:
2
优秀写手
日期:2014-12-05 06:00:13秀才
日期:2015-09-14 10:08:30
 楼主| 发表于 2017-2-17 09:09 | 显示全部楼层
wmxcn2000 发表于 2017-2-17 08:41
楼主贴一下你的执行结果;

内网的东西 贴不出来

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

TOP技术积分榜 社区积分榜 徽章 电子杂志 团队 统计 虎吧 老博客 知识索引树 读书频道 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档 | IT博客
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛 | SAP ERP系统
CopyRight 1999-2011 itpub.net All Right Reserved. 北京皓辰网域网络信息技术有限公司版权所有 联系我们 网站律师 隐私政策 知识产权声明
京ICP证:060528号 北京市公安局海淀分局网监中心备案编号:1101082001 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表