我有一个如下所示的表 1
Name role F1 status1 status 2
sam player yes null null
sam admin yes null null
sam guest no x x
我希望结果是
Name role status1 status 2
sam admin,player x x
我已经对 list_agg 中的角色进行了查询。但是当 F1='yes' 时,sam 的状态为空
我使用的查询
select name,list_agg(role,',') within group(order by name),max(status1),max(status2)
from table 1 where F1='yes'
group by name
但我得到这样的东西
name role status1 status2
sam admin,player null null
我希望仅在角色列上工作的位置和 max(status1) 处于 status1 即'x'。请帮助我。谢谢