表结构及数据如下:    年份      月份      金额
    2001       1         1000
    2001       2         1200
    2001       3         1300
    2002       1         2500
    2002       2         2600
    2002       3         2700如何用SELECT语句得到如下结果:年份    1月份金额      2月份金额      3月份金额
2001      1000           1200           1300
2002      2500           2600           2700

解决方案 »

  1.   

    select 
    年份,
    max(select 金额 from table1 t2 where t1.年份=t2.年份 and t2.月份=1) 1月份金额,
    max(select 金额 from table1 t2 where t1.年份=t2.年份 and t2.月份=2) 2月份金额,
    max(select 金额 from table1 t2 where t1.年份=t2.年份 and t2.月份=3) 3月份金额
    from table1 t1
    group by 年份
      

  2.   

    我试了一下不行,把去掉就可以了,非常感谢jxc(GameHeart)!
      

  3.   

    我试了一下不行,把去掉max就可以了,非常感谢jxc(GameHeart)!