【问题标题】:Oracle spatial Update sentence with sdo_nn "missing right parenthesis"带有 sdo_nn“缺少右括号”的 Oracle 空间更新语句
【发布时间】:2021-02-13 08:54:48
【问题描述】:

我试图让最近的点几何元素到另一个点,都被索引。这是sql语句:

'''

UPDATE table_A a  
SET a.fieldF = (SELECT B.fieldM, SDO_NN_DISTANCE(1) DIST  FROM Table_A  A, Table_B  B 
WHERE 
((SDO_NN(A.geometry, B.geometry, 'SDO_NUM_RES=1',1)='TRUE')) AND 
(B.fieldc='string1' OR B.fieldc='string2') ORDER BY DIST)

WHERE
(A.fieldF = NULL);'''

这句话我得到以下错误:

命令行错误:7 列:6 错误 SQL:ORA-00907: 00907. 00000 - “缺少右括号”但所有括号都正确关闭,如果我阅读正确,我必须打破单词 A.fieldF(行:7 列:6)

我做错了什么?

谢谢大家!!!

【问题讨论】:

    标签: oracle11g spatial-query


    【解决方案1】:

    真的这个错误:“缺少右括号”是不正确的,因为真的没有漏掉一个括号,这个错误是句子中写错造成的,在这种情况下
    “SDO_NN_DISTANCE(1 ) DIST",被当作另一个字段,显然我不能将两个字段放在另一个字段中

    SET a.fieldF = (SELECT B.fieldM, SDO_NN_DISTANCE(1) DIST  
    

    这是用户https://stackoverflow.com/users/9097906/littlefoot发布的此案例中此错误的答案:

    I need only one unique result in Oracle sdo_nn Update sentence ,

    【讨论】:

      猜你喜欢
      • 2021-11-10
      • 2019-05-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-19
      • 2023-03-10
      • 1970-01-01
      • 2018-09-29
      相关资源
      最近更新 更多