【问题标题】:how to make two pivot format for two column如何为两列制作两个枢轴格式
【发布时间】:2019-06-22 10:52:51
【问题描述】:

我有这样的桌子

id | name  | date 1     | amount 1| date 2     | amount 2
---------------------------------------------------
1  | xxxx  | 01-02-2019 | 2000    | 02-04-2019 | 3500
2  | yyyy  | 01-04-2019 | 5000    | 01-06-2019 | 6800

我只能对一列进行透视,我使用此代码

TRANSFORM Sum(tbl1.[amount1]) AS SumOfamount1
SELECT tbl1.[fname], Sum(tbl1.[amount1]) AS [Total Of amount1]
FROM tbl1
GROUP BY tbl1.[fname]
PIVOT Format([date1],"mmm") In 
("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");

此代码适用于日期 1 和金额 1 是否也允许为 date2 和 amount 2 制作?

【问题讨论】:

    标签: sql vb.net ms-access


    【解决方案1】:

    尝试使用子查询:

    TRANSFORM Sum(t.[amont1]) AS SumOfamont1
    SELECT t.[fname],
           Sum(t.[amount1]) AS [Total Of amount1]
    FROM (SELECT date1, amont1, fname
          FROM tbl1
          UNION ALL
          SELECT date2, amont2, fname
          FROM tbl1
         ) t      
    GROUP BY t.[fname]
    PIVOT Format([date1], "mmm") In ("Jan", "Feb", "Mar", "Apr", "May","Jun", "Jul", "Aug","Sep", "Oct", "Nov", "Dec");
    

    如果这不起作用,您可能需要使用 union all 的视图。

    【讨论】:

    • 谢谢,但我也想用 [date1] 为 [date2] 制作数据透视格式
    猜你喜欢
    • 2016-03-06
    • 2019-12-19
    • 1970-01-01
    • 2015-02-08
    • 1970-01-01
    • 2021-05-17
    • 2021-05-13
    • 1970-01-01
    • 2020-05-13
    相关资源
    最近更新 更多