Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Jak wybrać konkretny element z tablicy JSON w Oracle typu JSON CLOB

JSON_path_expression obsługuje tylko podstawową składnię, zgodnie z instrukcją :

JSON_path_expression::=

object_step::=

array_step::=

Alternatywnym podejściem jest użycie JSON_TABLE do przekształcenia JSON w relacyjną tabelę, a następnie projekcji i filtrowania kolumn.

select value
from json_table(
    '{
        "notUsed": [],
        "stock": [
            {
                "name": "eggs",
                "value": "in stock"
            },
            {
                "name": "milk",
                "value": "out of stock"
            }
        ]
    }',
    '$.stock[*]'
    columns
    (
        name varchar2(100 char) path '$.name',
        value varchar2(100 char) path '$.value'
    )
)
where name = 'eggs'

Wyniki:

VALUE
-----
in stock



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL/Regex Challenge/Puzzle:Jak usunąć komentarze z kodu SQL (za pomocą zapytania SQL)?

  2. Nie ma więcej danych do odczytania z błędu gniazda

  3. Jak mają się do siebie różne usługi w Oracle SOA?

  4. java.sql.SQLException:- ORA-01000:przekroczono maksymalną liczbę otwartych kursorów

  5. Zapytanie RODBC nie zwraca danych