> and how would I use DISTINCT ON for this query? Please bear in mind, > that there is more then one id_bf (just stopped the sample data with > one of them) I posted the answer more than hour ago: SELECT DISTINCT ON (id_rf) * FROM rfmitzeit ORDER BY id_rf, letztespeicherung DESC; The equivalent with window functions would be: SELECT * FROM (SELECT *,row_number() OVER (PARTITION BY id_rf ORDER BY letztespeicherung DESC) FROM rfmitzeit) t WHERE row_number=1 If you check the query plan you will understand why DISTINCT ON is the best option. Essensially, DISTINCT ON has no additional cost other the cost of ORDER BY id_rf, letztespeicherung DESC which is unavoidable -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general