我的表如下所示:
+-----------+--------+--------+--------+--------+--------+--------+--------+--------+--------+---------+---------+---------+----------+-------------+
| client_id | count1 | count2 | count3 | count4 | count5 | count6 | count7 | count8 | count9 | count10 | count11 | count12 | Count13+ | PatientYear |
+-----------+--------+--------+--------+--------+--------+--------+--------+--------+--------+---------+---------+---------+----------+-------------+
| 123 | 23 | 8 | NULL | NULL | NULL | NULL | 1 | 1 | NULL | NULL | NULL | NULL | NULL | 20120101 |
| 234 | 52 | 39 | 18 | 12 | 14 | 17 | 17 | 13 | 14 | 12 | 10 | 3 | 27 | 20120101 |
| 34 | 25 | 5 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 20120101 |
| 345 | 211 | 29 | 31 | 9 | 7 | 4 | 6 | NULL | NULL | 1 | NULL | 1 | 4 | 20120101 |
| 3457 | 13 | 4 | 3 | 7 | 8 | 6 | 9 | 1 | 7 | 5 | NULL | 1 | 9 | 20120101 |
| 5645 | 39 | 15 | 14 | 7 | 13 | 4 | 14 | 6 | 3 | 5 | 2 | 1 | 41 | 20120101 |
| 474 | 47 | 25 | 12 | 8 | 6 | 3 | 5 | 6 | 6 | 3 | 1 | 8 | 26 | 20120101 |
| 66 | 11 | 3 | 2 | 1 | 2 | NULL | 1 | 1 | NULL | 2 | 1 | 1 | 18 | 20120101 |
| 333 | 5 | 3 | 1 | 1 | 2 | 3 | NULL | 1 | 2 | 1 | NULL | NULL | 28 | 20120101 |
+-----------+--------+--------+--------+--------+--------+--------+--------+--------+--------+---------+---------+---------+----------+-------------+
...
我正在尝试创建一个像这样的支点:
+-----------------+----------+----------+----------+----------+----------+
| Values | 20080101 | 20090101 | 20100101 | 20110101 | 20120101 |
+-----------------+----------+----------+----------+----------+----------+
| Sum of count1 | 20895 | 87470 | 213877 | 398484 | 533062 |
| Sum of count2 | 2750 | 19020 | 48820 | 95423 | 142200 |
| Sum of count3 | 477 | 5958 | 19419 | 38449 | 61968 |
| Sum of count4 | 201 | 2012 | 8865 | 19098 | 30179 |
| Sum of count5 | 71 | 911 | 3894 | 8941 | 15675 |
| Sum of count6 | 39 | 612 | 2148 | 5380 | 9899 |
| Sum of count7 | 14 | 427 | 1466 | 3555 | 6450 |
| Sum of count8 | 11 | 239 | 1036 | 2381 | 4667 |
| Sum of count9 | 2 | 137 | 726 | 1888 | 4000 |
| Sum of count10 | 2 | 82 | 544 | 1399 | 3600 |
| Sum of count11 | 1 | 53 | 370 | 1094 | 3122 |
| Sum of count12 | 4 | 38 | 262 | 826 | 1845 |
| Sum of Count13+ | 32 | 188 | 609 | 2662 | 4044 |
+-----------------+----------+----------+----------+----------+----------+
这是我到目前为止所尝试的:
select
* from
(
select *
from #TempTable
) DataTable
PIVOT
(
sum (count1)
,sum(count2)
For PatientYear
in ([20120101],[20110101],[20100101],[20090101],[20080101])
)PivotTable
但我收到此错误:
消息 102,级别 15,状态 1,第 11 行 ',' 附近的语法不正确。
我究竟做错了什么?感谢您的指导。