Создание массива JSON в esql - PullRequest
0 голосов
/ 06 марта 2019

Я новичок в IIB и изо всех сил пытаюсь создать данные в формате JSON ниже в расширенном SQL.Пожалуйста, предложите мне.

{
    "name" : "John Doe",
    "age" : -1,
    "known" : false,
    "address" : { "street" : null, "city" : "unknown" },
    "belongings" : ["this", "that", "the other"]
}

Мой код ESQL:

DECLARE vm ROW;
    SET vm.Name[] = LIST{13,08,25,06};
    SET OutputRoot.JSON.Data.name = 'John Doe';
    SET OutputRoot.JSON.Data.age  =  1;
    SET OutputRoot.JSON.Data.known = false;
    SET OutputRoot.JSON.Data.address.street = null;
    SET OutputRoot.JSON.Data.address.city = 'Unknown';
    SET OutputRoot.JSON.Data.belongings = vm;

ВЫХОД:

{
"name":"John Doe",
"age":1,
"known":false,
"address":{"city":"Unknown"},
"belongings":{"Name":13,"Name":8,"Name":25,"Name":6}
}

1 Ответ

0 голосов
/ 09 марта 2019

Вот как вы можете создать массив JSON:

CREATE FIELD OutputRoot.JSON.Data.belongings IDENTITY(JSON.Array)belongings;
SET OutputRoot.JSON.Data.belongings.Item[1]=13;
SET OutputRoot.JSON.Data.belongings.Item[2]=8;
SET OutputRoot.JSON.Data.belongings.Item[3]=25;
SET OutputRoot.JSON.Data.belongings.Item[4]=6;
...