我有表
-----------------------------------------------------------------
    税种                    日期                    金额
-----------------------------------------------------------------
营业税                    2005-01                   1000
-----------------------------------------------------------------
营业税                    2005-01                   2000
-----------------------------------------------------------------
个人所得税                2005-02                   1250
-----------------------------------------------------------------
有很多税种和日期都是动态的
要生成
-----------------------------------------------------------------
税种                    year0501   year0503 ......
-----------------------------------------------------------------
营业税                  3000          0
-----------------------------------------------------------------
个人所得税              0           1250
-----------------------------------------------------------------
在mssql中很容易实现,
在MYSQL中能不能用一个查询语句实现,高手指教

解决方案 »

  1.   

    我的是结果不确定的交叉表
    也可以用case when 来实现?
      

  2.   

    在mssql我一般用case..when来实现
    而mysql同样也支持case..when
    select 税种 ,case 日期 when '2005-01' then  金额 year0501  when '2005-02' then 金额 year0502 ... else 金额 其它 from 你的表
      

  3.   

    结果不确定的话,在程序中动态生成SQL
      

  4.   

    只要支持就行了,先查询出日期来:
    Select Distinct 日期 From 表//查询1然后
    'Select 税种,Case 日期 '
     循环+'When 查询1结果 then 金额 ....