小编Leo*_*Lai的帖子

在SQL Server中使用动态列进行透视

我正在使用SQL Server(T-sql)中的动态列的pvots进行SQL查询.我没有提交冗长的查询,而是用简化的模型来说明我的问题.

我创建了2个表:Table1和Table2,并用几个条目填充它们,如下所示:

表格1:


Col_ID1 ............... COL_NAME

1 .........................扬11

2 ......................... FEB-11

3 ......................... 3月-11

表2:


Col_ID2 ......帐户.....帐户名......额

1 ............... 121 ...........电力............万

2 ............... 121 ...........电力............ 20000

3 ............... 121 ...........电力............ 30000

1 ............... 122 ...........电话.............. 100

2 ............... 122 ...........电话.............. 200

3 ............... 122 ...........电话.............. 300

我正在创建一个Pivot,但我希望以参数方式生成列名(基于输入屏幕中键入的日期),而不是硬编码.

下面的查询效果很好,但只提供了几列作为foll:

扬11 ...........月 - 11月........... 11

10,000.00 20,000.00 ...... 30,000.00 ......

100.00 200.00 ............... 300.00 ...........

我希望查询也返回描述性列,如下所示:

账户...........帐户名...........月11 ............月11 ........ ...... MAR-11

121 .................电力.................. 10,000.00 20,000.00 ...... ..... ..... 30,000.00

122 .................电话..................... …

t-sql pivot sql-server-2005 dynamic-data sql-server-2008

9
推荐指数
1
解决办法
3万
查看次数