I was wondering, is it possible to join the result of a query with itself, using PostgreSQL?
Yes, just alias the queries:
SELECT * FROM ( SELECT * FROM table ) t1 JOIN ( SELECT * FROM table ) t2 ON t1.column < t2.other_column