Вы можете использовать «хитрость» форматирования JSON в SQL Developer.
Полный сценарий:
CREATE TABLE JSON_SO (
"1" INTEGER,
"2" INTEGER,
"3" INTEGER,
"4" INTEGER,
"5" INTEGER,
"6" INTEGER
);
INSERT INTO JSON_SO VALUES (
40,
20,
22,
10,
0,
0
);
select /*json*/ * from json_so;
И вывод при выполнении с F5 (Выполнить как скрипт):
{
"results":[
{
"columns":[
{
"name":"1",
"type":"NUMBER"
},
{
"name":"2",
"type":"NUMBER"
},
{
"name":"3",
"type":"NUMBER"
},
{
"name":"4",
"type":"NUMBER"
},
{
"name":"5",
"type":"NUMBER"
},
{
"name":"6",
"type":"NUMBER"
}
],
"items":[
{
"1":40,
"2":20,
"3":22,
"4":10,
"5":0,
"6":0
}
]
}
]
}
Обратите внимание, что вывод JSON происходит на стороне клиента через SQL Developer (это также работает в SQLcl), и я отформатировал вывод JSON для отображения здесь, используя https://jsonformatter.curiousconcept.com/
Это будет работать с любой версией базы данных Oracle, которую поддерживает SQL Developer, в то время как функция JSON_OBJECT () была введена в Oracle Database 12cR2 - если вы хотите, чтобы формат БД, для результата был задан JSON для вы.