You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

统计多SiteID的UserID数量及明细的SQL实现需求

解决用户工作地点统计的SQL需求

假设存储数据的表名为user_work_sites,以下是针对两个需求的SQL实现:

需求1:统计当月曾在多个不同SiteID工作的UserID数量

SELECT COUNT(DISTINCT UserID) AS multi_site_user_count
FROM (
    SELECT UserID
    FROM user_work_sites
    GROUP BY UserID
    HAVING COUNT(DISTINCT SiteID) > 1
) AS subquery;

逻辑说明:内层子查询通过分组UserID,筛选出拥有2个及以上不同SiteID的用户;外层统计这些用户的总数量,对应示例结果为1。

需求2:列出符合条件的UserID及其对应的不同SiteID明细

SELECT DISTINCT uws.UserID, uws.SiteID
FROM user_work_sites uws
JOIN (
    SELECT UserID
    FROM user_work_sites
    GROUP BY UserID
    HAVING COUNT(DISTINCT SiteID) > 1
) AS qualified_users ON uws.UserID = qualified_users.UserID
ORDER BY uws.UserID, uws.SiteID;

逻辑说明:先通过子查询锁定符合条件的用户,再关联原表并使用DISTINCT去除同一用户同一地点的重复记录,最终输出用户对应的所有不同工作地点,对应示例结果会返回UserID 2023的两个SiteID。

内容的提问来源于stack exchange,提问作者Blondie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 09:13:19