【发布时间】:2020-09-29 14:16:57
【问题描述】:
这是一个与数组相关的初学者问题。我希望答案很简单。 该示例取自 Oracle Spatial,但我认为它适用于所有数组。
我有这个选择:
SELECT
D.FID
, D.GEOM.SDO_ELEM_INFO -- column GEOM contains spatial data
FROM
my_table D
我得到这个结果:
73035 MDSYS.SDO_ELEM_INFO_ARRAY(1, 2, 1)
73036 MDSYS.SDO_ELEM_INFO_ARRAY(1, 4, 3, 1, 2, 1, 11, 2, 2, 19, 2, 1)
73037 MDSYS.SDO_ELEM_INFO_ARRAY(1, 2, 1)
现在我想选择所有定义了 (1,2,1) 的行:
SELECT
D.FID
, D.GEOM.SDO_ELEM_INFO
FROM
my_table D
WHERE
-- Pseudo-Code is following
D.GEOM.SDO_ELEM_INFO is "(1, 2, 1)";
所以,简单来说:“array_from_row = defined_array”。 我发现了很多关于 IMPLODE 和 TABLE 和 COLLECT 等。但是如何在两个数组上定义一个子句?
感谢您的帮助!
【问题讨论】:
标签: sql arrays oracle select spatial