gpt4 book ai didi

sql - Oracle(空间几何)查询的问题

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

我正在尝试使用 SDO_WITHIN_DISTANCE 形成一个查询,该查询返回给定矩形内的实体列表。我所做的查询似乎应该可以工作,但是 Oracle 给了我一些奇怪的错误。这是查询:

SELECT * 
FROM TBLENTITYLOCATION TL
INNER JOIN TBLENTITY TE
ON TE.ENTITYID=TL.ENTITYID
WHERE SDO_WITHIN_DISTANCE (TL.GEOLOCATION
, SDO_GEOMETRY (2003
, NULL
, NULL
, SDO_ELEM_INFO_ARRAY(1, 1003, 3)
, SDO_ORDINATE_ARRAY(41, -73, 36, -82)
), 'DISTANCE=10 UNIT=M'
) = 'TRUE'
AND TL.LOCATIONDATETIME= (select MAX(LOCATIONDATETIME)
FROM TBLENTITYLOCATION
WHERE ENTITYID = TE.ENTITYID)

错误如下:
ORA-29902: error in executing ODCIIndexStart() routine
ORA-13208: internal error while evaluating [window SRID does not match layer SRID] operator
ORA-06512: at MDSYS.SDO_INDEX_METHOD_10I", line 286

OERR 说:
29902. 00000 -  "error in executing ODCIIndexStart() routine"
*Cause: The execution of ODCIIndexStart routine caused an error.
*Action: Examine the error messages produced by the indextype code and take appropriate action.

感谢您的任何帮助或想法。

最佳答案

ORA-13208 错误是这里的主要错误。
TL.GEOLOCATION 需要 SRID 中的匹配值(SDO_GEOMETRY 的第二个参数)

看看有没有回复here帮你解决。

关于sql - Oracle(空间几何)查询的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3259226/

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