有一个查询可以从表中计算活动会话的数量:
SELECT count(*) FROM sessions WHERE last_active >= DATE_SUB(NOW(), INTERVAL 15 MINUTE);
该表具有字段SESSIONID、uid、last_active。uid字段包含帐户ID 。在所有其他情况下(访客、搜索机器人)它等于零。告诉我如何根据 when 条件正确添加DISTINCTuid > 0
以丢弃用户多会话统计信息并将其计为一个?
有一个查询可以从表中计算活动会话的数量:
SELECT count(*) FROM sessions WHERE last_active >= DATE_SUB(NOW(), INTERVAL 15 MINUTE);
该表具有字段SESSIONID、uid、last_active。uid字段包含帐户ID 。在所有其他情况下(访客、搜索机器人)它等于零。告诉我如何根据 when 条件正确添加DISTINCTuid > 0
以丢弃用户多会话统计信息并将其计为一个?
如果我理解正确你需要什么:
那些。对于不等于 0 的 uid,我们计算唯一 uid 的数量,对于等于 0 的,我们计算唯一会话的数量。
如果 uid 和 SESSIONID 值来自完全不同的平面并且不能相互交叉,则它可以正常工作。例如,如果可以,则为会话添加一些前缀。
如果迈克的解决方案不起作用,您可以使用此查询
小提琴
忽略多会话意味着我们不显示它们
但实际上,最好分组并获得更多会话
我只是想知道这是否是你想要的
你想让它更难吗