sql >> Database teknologi >  >> RDS >> PostgreSQL

GROUP BY i Postgres - ingen lighed for JSON-datatypen?

Kortere, hurtigere og mere elegant med en LATERAL deltage:

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"

Hvis du bare vil have distinkte hold, skal du bruge ORDER BY kan gå. Relateret:

  • Forespørgsel efter element af array i JSON-kolonnen
  • Forespørgsel efter array-elementer inde i JSON-typen

JSON og ligestilling

Der er ingen lighedsoperator for json datatype i Postgres, men der er en for jsonb (Postgres 9.4+):

  • Hvordan forespørger man en json-kolonne for tomme objekter?



  1. LEAST() Funktion i Oracle

  2. Webinar:Sporing af forespørgselsfremskridt i SQL Server

  3. MySQLi udarbejdede erklæringer fejlrapportering

  4. Hvad er den bedste måde at teste SQL Server-forbindelse programmatisk?