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

PostgreSQL:Jak SUMAT atributy včetně pole JSONB a zachovat tvar tabulky?

Funkce jsonb_each_text() v poddotazu způsobí sloupec total_list_size je replikován tolikrát, kolikrát je počet položek v star_pu , tedy avg() ukazuje správný výsledek.

Chcete-li získat jeden total_list_size pro date můžete použít paralelní poddotaz, který akumuluje hodnotu nezávisle.

select *
from (
    select date, json_object_agg(key, val) total_star_pu
    from (
        select date, key, sum(value::numeric) val
        from frontend_practicelist, jsonb_each_text(star_pu)
        group by date, key
        ) s
    group by date
    ) s
    join (
        select date, sum(total_list_size) total_list_size
        from frontend_practicelist
        group by date
        ) t
    using(date)
order by date;


  1. #1139 - Z regulárního výrazu se vyskytla chyba 'repetition-operator operand invalid'

  2. Pravidla zabezpečení dědičnosti byla porušena typem:'MySql.Data.Entity.MySqlEFConfiguration'

  3. Jak přidat 2 data v Oracle sp?

  4. Odeberte VŠECHNY nebo konkrétní netisknutelný znak ze sloupce v mysql