PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Zapytanie o element tablicy w kolumnie JSON

Tak, to możliwe:

SELECT *
FROM   tbl t, json_array_elements(t.json_col->'emails') AS elem
WHERE  elem->>'id' = 123;

tbl będąc nazwą Twojej tabeli, json_col będąca nazwą kolumny JSON.

Więcej szczegółów w tej powiązanej odpowiedzi:

  • Jak wysyłać zapytania za pomocą pól w nowym typie danych PostgreSQL JSON?

Więcej o niejawnym CROSS JOIN LATERAL w ostatnim akapicie tej powiązanej odpowiedzi:

  • PostgreSQL unnest() z numerem elementu

Indeks obsługujący tego rodzaju zapytania:

  • Indeks do znajdowania elementu w tablicy JSON


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zapomniany operator przypisania =i banał :=

  2. Różnica między indeksem GiST i GIN

  3. Jaki jest MySQL odpowiednik funkcji EXPLAIN ANALYZE w PostgreSQL?

  4. Wybierz wiersze, których nie ma w innej tabeli

  5. Jak CONCAT_WS() działa w PostgreSQL