Hi Rafal,
Just a note that this is not standard SQL... 'distinct on' is an extension to SQL provided by postgres.
Following query utilizes the standard SQL to get the same results:
select
t1.id as id,
t2.id as "id+1",
t1.thread as thread, t2.thread as "thread+1",
t1.info as info,
t2.info as "info+1"
from test as t1, test as t2
where
t2.id = ( select min(id) from test as t3 where
t3.id >
t1.id);
HTH
--
gurjeet[.singh]@EnterpriseDB.com
singh.gurjeet@{ gmail | hotmail | indiatimes | yahoo }.com
17°29'34.37"N 78°30'59.76"E - Hyderabad *
18°32'57.25"N 73°56'25.42 "E - Pune
Sent from my BlackLaptop device