<分区>
我有以下查询,我需要计算与同一天具有相同 golddate 的用户数量,但是由于我必须使用 GROUP BY,所以当那天没有人时它不会返回零值, 你能帮忙吗?
SELECT count( * ) AS total, DATE( `golddate` ) AS gold_date
FROM `user`
WHERE YEAR( `golddate` ) >=2014
GROUP BY DATE( `golddate` )
ORDER BY DATE( `golddate` ) ASC
我想展示类似的东西
goldate | total
2012-12-10 | 23
2012-10-12 | 0
但问题是它永远不会返回零值日期,因为分组依据
我试过跟随但没有用,
SELECT
u1.golddate
-- this will count the number of links to each word
-- if there are no links the COUNT() call will return 0
, COUNT(u2.golddate) AS linkCount
FROM user u2
LEFT JOIN user u1
ON u1.user_id = u2.user_id
OR u2.user_id = u1.user_id
GROUP BY u1.golddate
即使这样也行不通
SELECT COALESCE(COUNT(`golddate`), 0) AS total, DATE( `golddate` ) AS gold_count
FROM `user`
WHERE YEAR( `golddate` ) >=2014
GROUP BY DATE( `golddate` )
ORDER BY DATE( `golddate` ) ASC