Wie Sie herausgefunden haben, können Sie DISTINCT
nicht kombinieren und ORDER BY
wenn Sie nicht zuerst nach dem eindeutigen Ausdruck ordnen:
-
weder in Aggregaten:
-
noch in SELECT:
Könnte jedoch so etwas wie
verwendenarray_to_string(arry_uniq_stable(array_agg(nome ORDER BY tid DESC)), ', ')
mit Hilfe einer Funktion arry_uniq_stable
das Duplikate in einem Array entfernt, ohne seine Reihenfolge zu ändern, wie ich ein Beispiel für in https:// stackoverflow.com/a/42399297/5805552
Bitte achten Sie darauf, einen ORDER BY
zu verwenden Ausdruck, der Ihnen tatsächlich ein deterministisches Ergebnis liefert. Mit dem Beispiel, das Sie gegeben haben, tid
allein würde nicht ausreichen, da es doppelte Werte (8) mit unterschiedlichem nome
gibt .