MySQL查询显示结果

Raj*_*Raj 2 mysql

我的询问是......

SELECT 
    tbl1.FeeName,
    SUM(tbl1.FeeAmount) AS TotAmt
FROM 
    tbl1
WHERE
    tbl1.DateTaken BETWEEN '2017-06-02' AND '2017-06-06'
GROUP BY
    tbl1.FeeId
Run Code Online (Sandbox Code Playgroud)

输出是......

费用

该表还包含上述日期之间未进行的其他费用(交易),因此未在query结果中显示.

我想显示那些FeeNames,值应为0.就像下面(黄色结果).

FEE1

我该怎么办 ?

Jay*_*hav 6

试试这个:这只会执行在给定日期范围内的费用的总和操作,剩余费用将为0

SELECT 
tbl1.FeeName,
SUM(CASE WHEN tbl1.DateTaken BETWEEN '2017-06-02' AND '2017-06-06' 
         THEN tbl1.FeeAmount
         ELSE 0
    END) AS TotAmt
FROM tbl1
GROUP BY  tbl1.FeeId
Run Code Online (Sandbox Code Playgroud)