sql >> Databáze >  >> RDS >> PostgreSQL

Postgres jsonb dotaz na vnořený objekt

Použijte json_agg() a jsonb_array_elements() funkce:

select json_agg(cell)
from (
    select jsonb_array_elements(elem->'cell') cell
    from (
        select jsonb_array_elements(data->'cust') elem
        from product_cust
        ) subsub
    ) sub

Můžete sloučit dva vnitřní poddotazy:

select json_agg(cell)
from (
    select jsonb_array_elements(jsonb_array_elements(data->'cust')->'cell') cell
    from product_cust
    ) sub

Seskupit výsledky podle productid:

select productid, json_agg(cell)
from (
    select productid, jsonb_array_elements(jsonb_array_elements(data->'cust')->'cell') cell
    from product_cust
    ) sub
group by 1
order by 1



  1. Výběr jednoho řádku v MySQL

  2. Jak se připojit k databázi Heroku postgres z místního připojení v php

  3. Spring MVC - smazání záznamu z tabulky JSP

  4. Nelze převést dotaz MySql pomocí doktríny DQL nebo QueryBuilder