Más corto, más rápido y más elegante con un LATERAL
unirse:
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"
Si solo quieres equipos distintos, el ORDER BY
puede ir Relacionado:
- Consulta del elemento de la matriz en la columna JSON
- Consulta de elementos de matriz dentro del tipo JSON
JSON e igualdad
No hay operador de igualdad para el json
tipo de datos en Postgres, pero hay uno para jsonb
(Postgres 9.4+):
- ¿Cómo consultar una columna json para objetos vacíos?