problema de alias de columnas postgres

Como novato en Postgresql (Me voy a mudar porque muevo mi sitio a heroku que solo lo admite, tengo que refactorizar algunas de mis consultas y código. Este es un problema que no entiendo muy bien. con:

PGError: ERROR:  column "l_user_id" does not exist
LINE 1: ...t_id where l.user_id = 8 order by l2.geopoint_id, l_user_id ...
                                                             ^

...consulta:

   select distinct 
          l2.*, 
          l.user_id as l_user_id, 
          l.geopoint_id as l_geopoint_id 
     from locations l 
left join locations l2 on l.geopoint_id = l2.geopoint_id 
    where l.user_id = 8 
 order by l2.geopoint_id, l_user_id = l2.user_id desc

Se agregó la cláusula "l.user_id como l_user_id, l.geopoint_id como l_geopoint_id" porque aparentemente a postgres no le gustan las cláusulas de orden con campos no seleccionados. Pero el error que recibo ahora hace que parezca que tampoco recibo alias. ¿Alguien con experiencia en postgres ve el problema?

Es probable que tenga muchos de estos problemas: las consultas funcionaron bien en mySql ...

Respuestas a la pregunta(4)

Su respuesta a la pregunta