Comme vous l'avez découvert, vous ne pouvez pas combiner DISTINCT
et ORDER BY
si vous ne commandez pas d'abord par l'expression distincte :
-
ni dans les agrégats :
-
ni dans SELECT :
Cependant pourrait utiliser quelque chose comme
array_to_string(arry_uniq_stable(array_agg(nome ORDER BY tid DESC)), ', ')
à l'aide d'une fonction arry_uniq_stable
qui supprime les doublons dans un tableau sans modifier son ordre comme j'ai donné un exemple dans https:// stackoverflow.com/a/42399297/5805552
Veuillez prendre soin d'utiliser un ORDER BY
expression qui vous donne en fait un résultat déterministe. Avec l'exemple que vous avez donné, tid
seul ne suffirait pas, car il y a des valeurs en double (8) avec différents nome
.