我有这些表:
server ocurrences date
A 122 20200101
B 1 20200101
C 15 20200101
............
我很想得到这些结果:
A;B;C
20200101 122;1;15
我进行以下查询:
select server, ocurrences, date FROM NET_REPORT
where to_char(date,'YYYYMMDD') >= '20200101'
AND server IN ('A','B','C') GROUP BY date, server,ocurrences ORDER BY date,server;
但是我无法获得想要的东西。 请问你能帮帮我吗? 谢谢
答案 0 :(得分:0)
我认为您想要string_agg()
或array_agg()
。我强烈推荐后者:
select date, array_agg(server) as servers,
array_agg(ocurrences) as occurrences
from net_report
where date >= '2020-01-01' and
date < '2020-01-02' and
server in ('des', 'pre', 'prod')
group by date
order by date;