【发布时间】:2019-02-13 04:16:50
【问题描述】:
我有以下 mysql 查询:
SELECT
LEFT(MONTHNAME(date), 3) AS month,
YEAR(date) AS year,
COUNT(id) AS quantity
FROM
budgets
GROUP BY MONTH(date)
返回给我这个:
|month|year|quantity|
---------------------
| Jan|2018| 10|
| Mar|2018| 2|
| May|2018| 5|
即使COUNT(id) 不存在,我也需要显示月份
像这样:
|month|year|quantity|
---------------------
| Jan|2018| 10|
| Feb|2018| 0|
| Mar|2018| 2|
| Apr|2018| 0|
| May|2018| 5|
有人知道怎么做吗?
更新
根据 D-Shih 答案代码,查询返回:
|month|year|quantity|
---------------------
| Jan|2018| 10|
| Feb|null| 0|
| Mar|2018| 2|
| Apr|null| 0|
| May|2018| 5|
如果我添加一个不同年份的寄存器,它将只显示一个名称为 2017 的行,例如:
|month|year|quantity|
---------------------
| Jan|2018| 10|
| Feb|null| 0|
| Mar|2018| 2|
| Apr|null| 0|
| May|2018| 5|
| May|2017| 2|
它必须显示
|month|year|quantity|
---------------------
| Jan|2018| 10|
| Feb|2018| 0|
| Mar|2018| 2|
| Apr|2018| 0|
| May|2018| 5|
| Jan|2017| 0|
| Feb|2017| 0|
| Mar|2017| 0|
| Apr|2017| 0|
| May|2017| 2|
【问题讨论】: