我有以下查询按用户类型及其登录间隔15分钟对登录进行分组。
SELECT
`group_type`,
COUNT(DISTINCT CONCAT(group_id,'||',stat_user_id)) as total_logins,
TIME(CONVERT_TZ(DATE_FORMAT(FROM_UNIXTIME(floor(UNIX_TIMESTAMP(`timestamp`) / 900) * 900), '%Y-%m-%d %H:%i:%s'), 'UTC', 'Europe/London'))
FROM stats_login
JOIN groups ON `stat_group_id` = `group_id
WHERE `stats_login`.`timestamp` > DATE_FORMAT(NOW(), "%Y-%m-%d 00:00:00") AND DATE_FORMAT(NOW(), "%Y-%m-%d 23:59:59")
GROUP BY `group_type`, floor(UNIX_TIMESTAMP(`stats_login`.`timestamp`) / 900)
这将返回类似的内容:
admin 1 05:30:00
admin 2 06:30:00
admin 4 07:00:00
admin 5 07:15:00
admin 17 07:30:00
editor 1 01:00:00
editor 1 02:15:00
editor 2 06:00:00
editor 1 06:15:00
editor 4 06:30:00
editor 3 06:45:00
editor 5 07:00:00
editor 7 07:15:00
editor 3 07:30:00
guest 1 08:00:00
guest 1 08:15:00
我想做的是在15分钟的间隔中添加所有用户类型都没有登录的时间。
我不知道从哪里开始。