>(still curious about the "must be used in an aggregate function" error>though... because I do use it in an
aggregate)
You're original query grouped on the person id and name, therefore you
can only return (and order by) these functions or the result of an
aggregate function on other columns (such as the array_accum function).
I'm no expert, but I think the error is slightly misleading, normally
you would order by the result of an aggregate function but maybe the
parser does this implicitly for you sometimes. does
select p.id_person, person_name(p), array_accum(distinct pt.type_fr) from person p left join
person_to_eventx using (id_person) left join person_type pt using (id_person_type) where person_name(p)
ilike'%will%' group by
p.id_person,person_name(p) order by 3;
work for you?