我有一个Postgres表,格式如下:
Fruit | 所有者 |
---|---|
苹果 | John |
橙色 | Susan |
梨 | Michael |
桃 | Susan |
您可以使用string_agg()
:
select t.*,
string_agg(fruit, ',') over (partition by owner) as owners_fruits
from t;
也就是说,我实际上建议将值放入一个数组中:
select t.*,
array_agg(fruit) over (partition by owner) as owners_fruits
from t;
阵列更通用。