Jak już wiesz, nie można łączyć DISTINCT
i ORDER BY
jeśli najpierw nie uporządkujesz według odrębnego wyrażenia:
-
ani w agregatach:
-
ani w WYBIERZ:
Jednak może użyć czegoś takiego jak
array_to_string(arry_uniq_stable(array_agg(nome ORDER BY tid DESC)), ', ')
za pomocą funkcji arry_uniq_stable
który usuwa duplikaty w tablicy bez zmiany jej kolejności, tak jak podałem przykład w https:// stackoverflow.com/a/42399297/5805552
Pamiętaj, aby użyć ORDER BY
wyrażenie, które faktycznie daje deterministyczny wynik. W podanym przez Ciebie przykładzie tid
sam byłby niewystarczający, ponieważ istnieją zduplikowane wartości (8) z różnymi nome
.