1
我有两个表是这样的:与SQL总结亚
| SalesId | SalesDate | SalesStore | | StoreId | Name |
|---------|-----------|------------| |---------|---------|
| 1 | 5/3/17 | 3 | | 1 | Store A |
| 2 | 2/2/18 | 3 | | 2 | Store B |
| 3 | 6/6/17 | 2 | | 3 | Store C |
| 4 | 7/8/17 | 3 |
我想知道是否有可能只生成以下输出使用SQL:
| Year | Store A | Store B | Store C |
|---------|---------|---------|---------|
| 2017 | 0 | 1 | 2 |
| 2018 | 0 | 0 | 1 |
基本上我想总和每家商店的销售额。
我能得到的总使用所有门店:
SELECT YEAR(SalesDate) [Year], Count(1) [Sales Count]
FROM Sales
GROUP BY YEAR(SalesDate)
ORDER BY 1
但我想知道是否有可能做到这一点使用一个SQL查询。
可能必须阅读有关PIVOT查询 –
如果SalesStore的数量不固定,您希望PIVOT或动态数据透视。很多答案可以在这里找到。 – Serg
如果是固定数量的商店,则可以使用条件汇总完成。如果没有,正如人们在我之前所说的那样,PIVOT就是要走的路。 – sagi