gpt4 book ai didi

php - 显示所有周/月包括空计数

转载 作者:行者123 更新时间:2023-11-29 00:14:33 25 4
gpt4 key购买 nike

我想列出每周的用户登录数。但是当周没有任何用户登录时,周不会显示出来。

我的查询如下:

SELECT *, 
YEARWEEK(`date`) AS yw,
COUNT(`userid`) AS numaction
FROM `login`
WHERE `action` = 'login' AND `userid` != 'admin'
GROUP BY week(`date`)
ORDER BY `date` DESC;

我也在 SO 中看到了一些示例,但需要另一个周数表。可以不用周数表吗?

对于每月,是一样的吗?我的意思是没有月表,只需使用表中的 date

我做了一个sqlfiddle .

最佳答案

我也使用虚拟表,只是生成方式不同。我有一个表“integerseries”,其中一列 (id) 有 500 行,从 1 到 499。这可用于生成任何日期范围。这里我们使用天数。

已修复 - 忘记了“或操作为空”测试。

SELECT *, 
YEARWEEK(`the_day`) AS yw,
COUNT(`userid`) AS numaction
FROM
(SELECT
MAKEDATE('2014', id) AS the_day
FROM integerseries
LIMIT 365) AS all_days
LEFT JOIN `login`
ON DATE(login.`date`) = all_days.the_day
WHERE `action` = 'login' AND `userid` != 'admin'
or `action` is null
GROUP BY WEEK(`the_day`)
ORDER BY `the_day` DESC;

关于php - 显示所有周/月包括空计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23440685/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com