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

PostgreSQL:Jak SUM atrybuty, w tym pole JSONB, i zachować kształt tabeli?

Funkcja jsonb_each_text() w podzapytaniu powoduje kolumnę total_list_size jest replikowana tyle razy, ile elementów w star_pu , więc avg() pokazuje prawidłowy wynik.

Aby uzyskać jeden total_list_size na date możesz użyć równoległego podzapytania, które niezależnie gromadzi wartość.

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL ignoruje myślniki podczas składania zamówienia

  2. Maksymalny rozmiar transakcji w PostgreSQL

  3. Jak przekonwertować hierarchiczne zapytania Oracle do postgresql?

  4. SQL:Zalety ENUM w porównaniu z relacją jeden-do-wielu?

  5. Jak przywrócić publiczny schemat do innego schematu?