+ -
当前位置:首页 → 问答吧 → 这个sql怎么写

这个sql怎么写

时间:2011-10-25

来源:互联网

SQL code
数据表
 年份  1月    2月   3月  4月   5月   6月    7月  8月   9月  10月   11月 12月
2001    2     2     22   2     12     21    12   212   212   33    323  32 
2002    3     23    232  32    23    232    232   323  32   32      23   23
2003    23    2    33   33     33     33    33    22   22   22      22   22
。。。。
结果:

年份  月份   水量
2001  1      2
。。。
2002  2      3
。。。
2003  11      22

。。。。。

作者: webqq456   发布时间: 2011-10-25

SQL code

SELECT '1' AS '月份',1月 AS '水量'  FROM tab
UNION ALL
SELECT '2' AS '月份',2月 AS '水量'  FROM tab
......

作者: youshang444   发布时间: 2011-10-25

SQL code

SELECT '1' AS 月份,1月 AS 水量 FROM tab
UNION ALL 
SELECT '2' AS 月份,2月 AS 水量 FROM tab

作者: youshang444   发布时间: 2011-10-25

你试下以下的方法,把相应的中文换成你对应的字段就OK,我没测试过!

select * fom table_name
unpivot(
 水量 for 月份 in (1月,2月,。。。。,12月)
)
order by 年份;

作者: xiaoyu871225   发布时间: 2011-10-25

引用 3 楼 xiaoyu871225 的回复:
你试下以下的方法,把相应的中文换成你对应的字段就OK,我没测试过!

select * fom table_name
unpivot(
水量 for 月份 in (1月,2月,。。。。,12月)
)
order by 年份;


我的版本不支持unpivot

作者: webqq456   发布时间: 2011-10-25