gpt4 book ai didi

oracle - ORA-13249 : SDO_NN cannot be evaluated without using index

转载 作者:行者123 更新时间:2023-12-04 17:07:29 25 4
gpt4 key购买 nike

在 ORACLE 中运行以下 Sql 脚本时出现错误

SELECT D.ID
FROM DOOR D
JOIN STREET S ON (S.ID=D.STREET_ID)
WHERE
SDO_NN(D.LOCATION,SDO_UTIL.FROM_WKTGEOMETRY('POINT (11112.0111 321314.2222)'),'sdo_num_res=6') = 'TRUE'
or
S.ID IN (17);

但是当我将“or”更改为“and”或删除“or S.ID IN (17)”时,我没有得到错误。

SELECT D.ID
FROM DOOR D
JOIN STREET S ON (S.ID=D.STREET_ID)
WHERE
SDO_NN(D.LOCATION,SDO_UTIL.FROM_WKTGEOMETRY('POINT (11112.0111 321314.2222)'),'sdo_num_res=6') = 'TRUE'
and
S.ID IN (17);

DOOR 表中Location 字段的类型是MDSYS.SDO_GEOMETRY

STREET 表中ID 字段的类型是NUMBER

我希望第一个 SQL 能够工作。任何人都可以帮助解决这个问题吗?

最佳答案

提示有什么用吗?

SELECT /*+ LEADING(d) USE_NL(d s) INDEX s spatial_index) */
D.ID
FROM DOOR D JOIN STREET S ON (S.ID = D.STREET_ID)
WHERE SDO_NN (
D.LOCATION,
SDO_UTIL.FROM_WKTGEOMETRY ('POINT (11112.0111 321314.2222)'),
'sdo_num_res=6') =
'TRUE'
AND S.ID IN (17);

关于oracle - ORA-13249 : SDO_NN cannot be evaluated without using index,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70257575/

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