sql >> Databasteknik >  >> RDS >> PostgreSQL

Räkna frekvens för array eller jsonb-objekt

Du kan unnest() matriser, t.ex.:

select id, jsonb_object_agg(tag, count) as tags
from (
    select id, unnest(string_to_array(tags, ']')) as tag, count(*)
    from my_table
    group by 1, 2
    ) s
group by 1
order by 1

Db<>fiol.




  1. Fixa "Minst ett av argumenten till COALESCE måste vara ett uttryck som inte är NULL-konstanten" i SQL Server

  2. Hur får jag ID för en rad som har MAX- och MIN-värden i SQL

  3. Inaktiverar PDO::ATTR_EMULATE_PREPARES orsakar ett "okänt" problem

  4. Hur man skriver en fråga med flera beteenden