sql >> Database >  >> RDS >> PostgreSQL

sql voor het vinden van de meest recente record in een groep

Vraag:

SELECT table_id, series_id, revision_id, year
FROM tableName t INNER JOIN
    (SELECT revision_id, max(year) AS year
    FROM tableName 
    WHERE series_id = 2 
    GROUP BY revision_id) s
USING (revision_id, year)
WHERE series_id = 2;

Resultaat:

 table_id | series_id | revision_id | year
----------+-----------+-------------+------
        2 |         2 |           1 | 2009
        4 |         2 |           2 | 2009
        5 |         2 |           3 | 2010
(3 rows)


  1. MySQL zijn mijn indexen goed?

  2. PL/SQL-query IN door komma's gescheiden tekenreeks

  3. Doorlopend datumvenster van 90 dagen in SQL Oracle

  4. Gewenste uitvoer met gegeven tabelgegevens