当我在表中查询这样的特定对象时,我会得到一个空的结果集:
SELECT
a, b, c, valid_to, pk_mykey, myobject
FROM
myschema.mytable
WHERE
valid_to = to_date('31.12.9999 23:59:59', 'dd.mm.yyyy hh24:mi:ss')
AND
pk_mykey > 0
AND
myobject = 'ABC.123';
但我知道记录必须在表中!
所以我使用这个查询,它会突然出现:
SELECT
/*+ NO_INDEX(mytable myindex) */
a, b, c, valid_to, pk_mykey, myobject
FROM
myschema.mytable
WHERE
valid_to = to_date('31.12.9999 23:59:59', 'dd.mm.yyyy hh24:mi:ss')
AND
pk_mykey > 0
AND
myobject = 'ABC.123';
那么通过使用索引记录不会显示,但没有索引它会?这怎么可能?我在这里想念什么?我的表格和/或索引有什么问题?知道如何解决这个问题吗?
(DBMS 是 Oracle 11g EE 11.2.0.2.0 64bit)