![]() |
1
3
这是我的发现。。。似乎您正面临一个bug,这是由于计算日期似乎与“数据库”日期具有不同的内部表示形式。我确实找到了解决办法,所以继续读下去。 在我的oracle dev安装(oracle 11g Enterprise Edition 11.2.0.4.0-64位生产版)中,我遇到了与您相同的问题。 但是。。。如果我创建一个
然后在此物理表上运行“cast collect”操作符,它将按预期工作:
好像甲骨文不这么认为 日期是一回事 日期 所以,我试图“说服”甲骨文,我提供的数据实际上是一个正常的日期值,使用显式转换。。。还有尤里卡!这样做正确:
对。。。但是为什么?? 这两个值似乎并不完全相同,即使我们看到的值实际上是相同的:
所以我深入研究了这两个值的内部表示,将“dump”函数应用于这两个值:
我得到的结果如下:
不管怎样,我发现了更多。。似乎有人注意到了这一点: https://community.oracle.com/thread/4122627 http://psoug.org/reference/datatypes.html 里面有一个很长的关于日期的注释。。。摘录如下:
不管怎样,我再说一遍:我认为这是一个bug,但至少我找到了一个解决方法:使用显式cast。 |
![]() |
maddy · 如何根据oracle SQL中的某一列值进行排名 1 年前 |
![]() |
kiric8494 · 显示以元音开头和结尾的城市名称 2 年前 |
![]() |
Franz Biberkopf · Oracle:组合子查询和聚合函数 2 年前 |
![]() |
BitLauncher · 甲骨文-如何模拟位列和布尔和/或? 2 年前 |
![]() |
Arifullah · 如何从oracle中的列中删除特定的初始字符? 2 年前 |
![]() |
Anar · Oracle SQL用户定义函数 2 年前 |
![]() |
user1312312 · 如何为一组表编写通用触发器? 3 年前 |