Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Como embelezar os resultados da consulta formatada em JSON no SQLcl (Oracle)


Se você usa SQLcl para consultar o banco de dados Oracle, pode estar ciente do SET SQLFORMAT json opção, que faz com que os resultados da consulta voltem como documentos JSON.

Mas também há um json-formatted opção, que retorna os resultados em um formato mais legível.

Exemplo


Segue um exemplo para demonstrar:
SET SQLFORMAT json-formatted;
SELECT * FROM regions;

Resultado:
{
  "results" : [
    {
      "columns" : [
        {
          "name" : "REGION_ID",
          "type" : "NUMBER"
        },
        {
          "name" : "REGION_NAME",
          "type" : "VARCHAR2"
        }
      ],
      "items" : [
        {
          "region_id" : 1,
          "region_name" : "Europe"
        },
        {
          "region_id" : 2,
          "region_name" : "Americas"
        },
        {
          "region_id" : 3,
          "region_name" : "Asia"
        },
        {
          "region_id" : 4,
          "region_name" : "Middle East and Africa"
        }
      ]
    }
  ]
}

Como comparação, aqui está usando o json configuração (ou seja, sem que o resultado seja embelezado):
SET SQLFORMAT json;
SELECT * FROM regions;

Resultado:
{"results":[{"columns":[{"name":"REGION_ID","type":"NUMBER"},{"name":"REGION_NAME","type":"VARCHAR2"}],"items":
[
{"region_id":1,"region_name":"Europe"}
,{"region_id":2,"region_name":"Americas"}
,{"region_id":3,"region_name":"Asia"}
,{"region_id":4,"region_name":"Middle East and Africa"}
]}]}