【发布时间】:2019-06-27 21:36:10
【问题描述】:
我有 2 个使用 相同查询但返回不同结果的 oracle 连接:
SELECT TO_CHAR(DATE_TIME, 'yyyy-MM-dd hh:mi:ss' ) myDateTime,
t.*
FROM TMI_ISD_AUDIT_TRAIL t
WHERE NVL(USER_ID,'') LIKE '%'
AND NVL(Action,'') LIKE '%'
AND NVL(success,'') LIKE '%%'
AND TO_CHAR(DATE_TIME, 'yyyy-MM-dd' ) LIKE '%'
AND rownum <100
如何检查底层未提交的事务?
【问题讨论】:
-
我能想象到这种情况发生的唯一方法是,如果底层数据实际上在两个查询之间发生了变化。
-
不,先生。到目前为止没有交易..
-
如果您删除
rownum条件,它会返回相同的交易吗? -
删除 rownum 返回相同的先生
-
是的,这看起来很奇怪。历史教训表明,事情并没有像你想象的那样发生。不幸的是,我们只能猜测可能的解释是什么。我同意@TimBiegeleisen 的观点,即未提交的交易似乎是最可能的解释。您的屏幕截图似乎有两个选项卡,为每个连接显示
TMI_ISD_AUDIT_TRAIL:它们是否反映了工作表查询的不同结果?