Dank euch allen habe ich endlich die Lösung gefunden! Ich habe die Antwort von João Mendes akzeptiert, weil ich das Problem tatsächlich mit dem richtigen Alias gelöst habe, aber alle anderen Antworten waren auch relevant und haben mir geholfen.
Hier ist die letzte Abfrage. Im DISTINCT
Ich habe alle Felder des zugeordneten Objekts (Konzentrator) plus die beiden in ORDER BY
verwendeten Felder eingefügt Korrektes Alias verwenden. Nicht das schönste, denke ich, aber es hat gut funktioniert!
SELECT DISTINCT CONCENTRATOR_ID, c.NAME, SUPERVISIONNAME, INTERNALADDRESS, ACTIVEALARMS, IM, ID, LINK, IW, LASTUPDATE, TYPE_ID, DEPARTMENT_ID, d.NAME as "department.name", t.NAME as "type.name"
FROM "CONCENTRATOR" c LEFT OUTER JOIN "CONCENTRATOR_GROUP" USING(CONCENTRATOR_ID)
LEFT OUTER JOIN "GROUP" g USING(GROUP_ID)
LEFT OUTER JOIN "TYPE" t USING(TYPE_ID)
LEFT OUTER JOIN "DEPARTMENT" d USING(DEPARTMENT_ID)
WHERE (g.ident = 1) OR (g.ident = 16) OR (g.ident = 44)
AND (c.iw) > 0
AND TRIM(UPPER(t.name)) = 'OTELO'
ORDER BY im DESC, id DESC, link DESC, iw DESC, TRIM(UPPER(d.name)) ASC, TRIM(UPPER(c.name)) ASC