Du musst aufpassen, wo Du aufsetzst.
Das Array ist indexFields und nicht item .
Versuch's mal so:
Code:
select * from JSON_TABLE(:JSON,'$.indexFields[*]'
COLUMNS (fieldName VARCHAR(100) PATH '$.fieldName',
fieldLabel VARCHAR(100) PATH '$.fieldLabel',
item VARCHAR(100) PATH '$.item',
NESTED '$.item.Row[*].ColumnValue[*]'
COLUMNS (FieldName1 VARCHAR(100) PATH '$.FieldName' Default '' on empty,
FieldLabel1 VARCHAR(100) PATH '$.FieldLabel',
Item1 VARCHAR(100) PATH '$.Item'
))) AS X;
NULL-Werte kann man entweder einer Default-Anweisung bei der Spalten-Definition im JSON_TABLE oder der Funktion COALESCE in der SELECT-Zeile in Default-Werte konvertieren.
Birgitta
Bookmarks