2016-11-23 75 views
0

是否有可能得到这样的结果?将多行项目分组为单行

datetime   | sysname | resource | metric  | value 
-------------------+---------+------------+-------------+------- 
Nov 23,2016 2:00 |  A |  A-2 | Utilization | 0.30 
Nov 23,2016 2:00 |  A |  A-2 | Throughput | 300 
Nov 23,2016 2:00 |  B |  B-2 | Utilization | 10.8 
Nov 23,2016 2:00 |  B |  B-2 | Throughput | 1080 

预期输出:

datetime   | sysname | resource | Utilization | Throughput 
------------------+---------+----------+-------------+------- 
Nov 23,2016 2:00 | A  | A-2  | 0.3  | 300 
Nov 23,2016 2:00 | B  | B-2  | 10.8  | 1080 

回答

1
SELECT datetime, sysname, resource, a.value, b.value 
FROM metrics a 
    JOIN metrics b 
     USING (datetime, sysname, resource) 
WHERE a.metric = 'Utilization' AND b.metric = 'Throughput'; 
+0

感谢Laurenz ALBE。如果我有更多的指标来完成相同的连接,该怎么办? – Samila

+0

然后,您必须更改您的SQL语句以对其进行修改 - 基本上,为每个表添加另一个表副本。 –