Hallo zusammen,

ich habe die unten stehende JSON Datei und möchte diese mit folgendem SQL auslesen:

Code:
SELECT *
FROMJSON_TABLE(
    (Select line fromtable(qsys2.ifs_read_utf8('/test/so3.json')) fetchfirstrowonly), 
'$'
COLUMNS (
        VOUCHERTYPE     VARCHAR(10) PATH'$.vouchertype',
        VOUCHERNO       VARCHAR(20) PATH'$.voucherno',
        WAREHOUSENO     VARCHAR(10) PATH'$.warehouseno',

NESTED'$.supplier'
COLUMNS (
            SUPPLIERNO      VARCHAR(15) PATH'$.supplierno',
            NAME1           VARCHAR(50) PATH'$.name1',
            EMAIL           VARCHAR(50) PATH'$.email',
            PHONE           VARCHAR(30) PATH'$.phone',    
NESTED'$.address[*]'
COLUMNS (
                STREET          VARCHAR(50) PATH'$.street',
                ZIPCODE         VARCHAR(10) PATH'$.zipcode',
                CITY            VARCHAR(50) PATH'$.city',
                ADDRESSTYPE     VARCHAR(10) PATH'$.addresstype',
                COUNTRYCODETYPE VARCHAR(10) PATH'$.countrycodetype',
                COUNTRYCODE     VARCHAR(5)  PATH'$.countrycode'
            )
        ),

NESTED'$.lineitems[*]'
COLUMNS (
            SKU             VARCHAR(50) PATH'$.sku',
            LINEITEMNO      VARCHAR(10) PATH'$.lineitemno',
            ARTICLENAME     VARCHAR(100) PATH'$.articlename',
            ORDEREDQUANTITY DECIMAL(10,2) PATH'$.orderedquantity',

NESTED'$.productcodes[*]'
COLUMNS (
                PRODUCTCODETYPE VARCHAR(10) PATH'$.type',
                PRODUCTCODE     VARCHAR(50) PATH'$.value'
            )
        )
    )
);
Warum bekomme ich dann zwei Zeilen und nicht eine? Wahrscheinlich hängt es mit meinem Gebrauch der NESTED zusammen aber ich schaffe es einfach nicht, dass er alles in einer Zeile ausliest:
Click image for larger version. 

Name:	Screenshot 2024-12-18 113539.jpg 
Views:	53 
Size:	52,4 KB 
ID:	683
Wäre sehr nett wenn mir hier jemand bitte eine Tipp geben kann.

Hier das Json:
Code:
{
    "vouchertype": "AB",
    "voucherno": "1234567",
    "warehouseno": "123",
    "supplier": {
        "name1": "Test GmbH",
        "email": "info@test.com",
        "phone": "012345-6789",
        "address": [
            {
                "street": "Test-Straße 33",
                "zipcode": "12345",
                "city": "Testort",
                "addresstype": "HOME",
                "countrycodetype": "ISO31661",
                "countrycode": "DE"
            }
        ],
        "supplierno": "12345"
    },
    "lineitems": [
        {
            "sku": "1234567890",
            "lineitemno": "1.000",
            "articlename": "Testartikel",
            "orderedquantity": 100,
            "productcodes": [
                {
                    "type": "EAN",
                    "value": "1234567890"
                }
            ]
        }
    ]
}
Gruß
Sebastian