преобразовать вывод запроса в json в oracle 12c

Еще одна идея состоит в том, чтобы сначала преобразовать вашу строку CSV в JSON с последующим извлечением JSON в следующих строках:

... '["' || replace( user_action, '.', '", "' ) || '"]' AS replaced

... JSON_EXTRACT_ARRAY_ELEMENT_TEXT(replaced, numbers.i) AS parsed_action

Где «числа» - таблица из первого ответа. Преимуществом этого подхода является возможность использования встроенных функций JSON.

1
задан navid sedigh 16 January 2019 в 15:34
поделиться

2 ответа

Если вы хотите, чтобы сервер БД Oracle возвращал результат в виде JSON, вы можете выполнить запрос, как показано ниже -

 SELECT JSON_OBJECT ('1' VALUE col1, '2' VALUE col2, '3' VALUE col3) FROM table
0
ответ дан shakhawat 16 January 2019 в 15:34
поделиться

Вы можете использовать трюк форматирования JSON в SQL Developer.

enter image description here

Полный сценарий:

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 (Выполнить как сценарий):

[ 111]

Обратите внимание, что вывод JSON происходит на стороне клиента через SQL Developer (это также работает в SQLcl), и я отформатировал вывод JSON для отображения здесь, используя https://jsonformatter.curiousconcept.com/ ] в JSON для вас.

0
ответ дан thatjeffsmith 16 January 2019 в 15:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: