gpt4 book ai didi

database - Oracle 在两次使用同一列时无法正确排序

转载 作者:太空狗 更新时间:2023-10-30 01:46:05 25 4
gpt4 key购买 nike

当我运行这个查询时,结果没有正确排序。

SELECT 
SYSDATE - datecolumn a,
SYSDATE - datecolumn sortcolumn
FROM atable
ORDER BY sortcolumn

产生:

2576.780243055555555555555555555555555556
2586.297013888888888888888888888888888889
2342.294479166666666666666666666666666667
2617.297476851851851851851851851851851852
2624.855104166666666666666666666666666667
2624.855138888888888888888888888888888889
2624.854236111111111111111111111111111111
2372.296643518518518518518518518518518519
2645.257800925925925925925925925925925926
2403.294756944444444444444444444444444444
2676.297696759259259259259259259259259259

删除第一行 (SYSDATE - datecolumn a,) 后,一切正常。发生这种情况有什么特别的原因吗?

最佳答案

这似乎是一个错误。此行为看起来类似于 bug 8675087,据称已在 11.2.0.2 中修复 - 实际上我无法为此重现测试用例。但我仍然看到你在该版本(在 SQL Fiddle 上)和 11.2.0.3 中的行为,所以这很相似但不完全相同......

如果这给您带来了真正的问题,并且您找不到满意的解决方法(例如交换列顺序;如果您的 sortcolumn 是第一个使用 的表达式sysdate 似乎没问题,但在实际查询中交换列可能不方便)那么您应该向 Oracle 提出服务请求。

关于database - Oracle 在两次使用同一列时无法正确排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23634840/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com