Calling SELECT DISTINCT on multiple columns
How does this work exactly?


It gives you distinct combinations of all the expression in the SELECT list. 

SELECT DISTINCT col1, col2, ... 
FROM table_name ;


is also equivalent to:

SELECT col1, col2, ... 
FROM table_name 
GROUP BY  col1, col2, ... ;


Another way to look at how it works - probably more accurate - is that it acts as the common bare SELECT (ALL) and then removes any duplicate rows. See Postgres documentation about SELECT: DISTINCT clause.


  Should we ever do this?


Of course. If you need it, you can use it.