我的任务是提出翻译以下数据的方法:
date category amount
1/1/2012 ABC 1000.00
2/1/2012 DEF 500.00
2/1/2012 GHI 800.00
2/10/2012 DEF 700.00
3/1/2012 ABC 1100.00
Run Code Online (Sandbox Code Playgroud)
进入以下内容:
date ABC DEF GHI
1/1/2012 1000.00
2/1/2012 500.00
2/1/2012 800.00
2/10/2012 700.00
3/1/2012 1100.00
Run Code Online (Sandbox Code Playgroud)
空白点可以是NULL或空白,也可以是好的,并且类别需要是动态的.另一个可能的警告是,我们将以有限的容量运行查询,这意味着临时表已经出局.我已经尝试过研究并且已经登陆了,PIVOT
但是在我真的不理解它之前我从未使用过它,尽管我尽了最大的努力去解决它.谁能指出我正确的方向?
我正在使用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 .................电话..................... …