首页 新闻 会员 周边

关于Oracle between and 是否包含边界问题

0
悬赏园豆:180 [待解决问题]

select round(sum(INTEGRITY)/count(id),2) as twoQuarterINTEGRITY,companyId
from history_integrity
where time between '2018-04%' and '2018-06%'

谁能解决为什么取不到4月和6月的数值

不会写代码的小丑的主页 不会写代码的小丑 | 初学一级 | 园豆:16
提问于:2018-06-06 17:32
< >
分享
所有回答(7)
0

不懂oracle.

不过是不是有6月没4月?

而且time字段是事件类型还是字符串类型?如果是时间类型干嘛加%

吴瑞祥 | 园豆:29449 (高人七级) | 2018-06-06 17:45

字符串类型大致上可以理解为只要满足前面的%后面出现的都不问

支持(0) 反对(0) 不会写代码的小丑 | 园豆:16 (初学一级) | 2018-06-07 09:10

@不会写代码的小丑: 我觉得你不加百分号可能可以用.应该只有like才会认那个东西吧.他直接把%当成值对比了吧.我猜的.

支持(0) 反对(0) 吴瑞祥 | 园豆:29449 (高人七级) | 2018-06-07 17:03

@吴瑞祥: 没有,如果我改成07%,就可以取到06的时间的值,只是我很好奇,between确实是包含边界的,但这样写就不包含边界了,很是奇怪,不过我的问题已经解决了,只是这个问题有点懊恼,只是想搞明白

支持(0) 反对(0) 不会写代码的小丑 | 园豆:16 (初学一级) | 2018-06-07 17:07
0

包含边界的

jello chen | 园豆:7306 (大侠五级) | 2018-06-06 21:38

我知道包含边界的可是为什么取不到4月和6月的值

支持(0) 反对(0) 不会写代码的小丑 | 园豆:16 (初学一级) | 2018-06-07 09:11
0

跑一下就知道包不包含啊~

凡人修仙迹 | 园豆:369 (菜鸟二级) | 2018-06-07 08:29
0

1.首先确定4月,6月数据库中有值。

2.将4月和6月换掉其他数字,例如换成3月和7月,做数据测试

3.如果3月和7月中有4月和6月,没有3月和7月,那就是不包含边界,有,则包含。或者在测测

4.说那么多名词有啥用?有无边界需要去查去记么?自己动手,相信事实。

good_idea | 园豆:74 (初学一级) | 2018-06-07 10:25
0

你这边只有年和月,看不出什么问题,是不是条件最终生成的是2018-06-01 00:00:00,所以找不到6月的数据,确认一下。

chengeng | 园豆:294 (菜鸟二级) | 2018-06-07 18:07
0

包涵的

小灰i | 园豆:200 (初学一级) | 2018-06-23 22:41
0

包含是对的我知道,但是为什么我在日期后面加上%就不包含了这个是问题,虽然我也不知道为什么

不会写代码的小丑 | 园豆:16 (初学一级) | 2018-07-13 14:38
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册