PostgreSQL - sintaxe “DISTINCT ON” e “GROUP BY”

Eu percebi que uma consulta de banco de dados estava retornando resultados inesperados para o meu uso indevido de "DISTINCT ON" e "GROUP BY"

Espero que alguém possa me esclarecer isso. A consulta real é bastante complexa, então vou simplificar:

Eu tenho uma tabela / consulta interna que consiste em um object_id e um timestamp:

CREATE TABLE test_select ( object_id INT , event_timestamp timestamp );
COPY test_select (object_id , event_timestamp) FROM stdin (DELIMITER '|');
1           | 2013-01-27 21:01:20
1           | 2012-06-28 14:36:26
1           | 2013-02-21 04:16:48
2           | 2012-06-27 19:53:05
2           | 2013-02-03 17:35:58
3           | 2012-06-14 20:17:00
3           | 2013-02-15 19:03:34
4           | 2012-06-13 13:59:47
4           | 2013-02-23 06:31:16
5           | 2012-07-03 01:45:56
5           | 2012-06-11 21:33:26
\.

Estou tentando selecionar um ID distinto, ordenado / desduplicado pelo timestamp no cron reverso

então os resultados devem ser [4, 1, 3, 2, 5]

Eu acho que isso faz o que eu preciso (parece):

SELECT object_id  
FROM test_select 
GROUP BY object_id 
ORDER BY max(event_timestamp) DESC
;

Para fins de teste / auditoria, às vezes quero incluir o campo de registro de data e hora. Eu não consigo descobrir como incluir outro campo com essa consulta.

Alguém pode apontar problemas gritantes no meu sql acima, ou sugestões sobre como incluir as informações de auditoria?

questionAnswers(2)

yourAnswerToTheQuestion