Это начальный вопрос, связанный с массивами. Надеюсь ответ прост. Пример взят из 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)";
Итак, простыми словами: «массив_из_строки = определенный_массив». Я нашел много информации о IMPLODE, TABLE, COLLECT и т. д. Но как определить предложение для двух массивов?
Спасибо за помощь!
ORA-00932: inconsistent datatypes: expected NUMBER got MDSYS.SDO_ELEM_INFO_ARRAY 00932. 00000 - "inconsistent datatypes: expected %s got %s"
10.06.2020