Sql 水平而不是垂直地获取数据
考虑以下问题:Sql 水平而不是垂直地获取数据,sql,Sql,考虑以下问题: Select Dealer, Sales from DEALERDATA where period in (201106,201107) 这将产生以下结果: DEALER SALES Dealer1 100000 Dealer1 200000 Dealer2 600000 Dealer2 700000 我想要结果 DEALER SALES SALES Dealer1 100000 200000 Dealer2 600000 700000 如果有人能让我知道如何做到这一点
Select Dealer, Sales from DEALERDATA
where period in (201106,201107)
这将产生以下结果:
DEALER SALES
Dealer1 100000
Dealer1 200000
Dealer2 600000
Dealer2 700000
我想要结果
DEALER SALES SALES
Dealer1 100000 200000
Dealer2 600000 700000
如果有人能让我知道如何做到这一点
非常感谢,,
沙龙 对于一些列,您可以将CASE与sum结合使用
SELECT Dealer
, SUM(CASE WHEN period=201106 THEN Sales ELSE 0 END) sales201106
, SUM(CASE WHEN period=201107 THEN Sales ELSE 0 END) sales201107
FROM DEALERDATA
WHERE period IN (201106,201107)
GROUP BY Dealer
您使用的是哪台sql服务器:mysql、ms sql等。。。?