Kratší, rychlejší a elegantnější s LATERAL
připojit se:
SELECT DISTINCT ON (t.team->>'Name') t.team
FROM matches m, json_array_elements(m.match->'Teams') t(team);
ORDER BY t.team->>'Name', m.id DESC; -- to get the "last"
Pokud chcete pouze odlišné týmy, ORDER BY
můžeš jít. Související:
- Dotaz na prvek pole ve sloupci JSON
- Dotaz na prvky pole v typu JSON
JSON a rovnost
Pro json
neexistuje žádný operátor rovnosti datový typ v Postgresu, ale existuje jeden pro jsonb
(Postgres 9.4+):
- Jak se dotazovat sloupec json na prázdné objekty?