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

Ottieni un elenco del primo record per ogni gruppo

Un altro caso per DISTINCT ON :

SELECT DISTINCT ON (username) *
FROM   log
ORDER  BY username, created_at;

Restituisce l'intera riga per la "prima" voce per username .

Dettagli:

Risposta simile per Ruby / AR / Postgres:

Come eseguire SQL grezzo:

Questa sintassi di Ruby dovrebbe funzionare:

Log.select("DISTINCT ON (username) *").order(:username, :created_at)