根据表的值查询列

时间:2019-06-19 04:53:52

标签: sql ms-access

我是DB和SQL的新手,所以我不知道有什么需要尝试的新功能。我想解决我上级给我的这张桌子:

存折(表名)

Date    |  Amount  |  Type
-----------------------------
14/3/19 |   48000  |  Debit |
13/2/19 |   75000  |  Credit|
9/7/19  |   65000  |  Credit|
12/6/19 |   15000  |  Debit |

现在我必须以这种方式生成查询:

Month   |  Debit   |  Credit
------------------------------
13/2/19 |     0    |  75000
14/3/19 |   48000  |    0
12/6/19 |   15000  |    0
9/7/19  |     0    |  65000

“我的存折”表值已成为查询列和IDK如何以这种方式生成它

任何人请帮助我

对于每月排序,我想应该使用ORDER BY子句

现在我必须以这种方式生成查询。

1 个答案:

答案 0 :(得分:1)

基本的数据透视查询应在此处工作:

SELECT
    Format(Month([Date])) AS Month,
    SUM(IIF(Type = 'Debit', Amount, 0)) AS Debit,
    SUM(IIF(Type = 'Credit', Amount, 0)) AS Credit
FROM yourTable
GROUP BY
    Format(Month([Date]));

如果您想输出日期级别,请直接在Date列中汇总。