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

QuickSight中如何从两同结构表识别流失活跃用户?

找出已离开应用的用户(左表存在、右表缺失)

下面提供几种通用的SQL查询方案,适用于绝大多数关系型数据库:

方案1:LEFT JOIN 筛选NULL记录(最通用)

SELECT 左表.*
FROM 左表
LEFT JOIN 右表 ON 左表.user_id = 右表.user_id
WHERE 右表.user_id IS NULL;

通过左连接关联两张表的用户唯一标识(比如user_id),右表中匹配不到的用户对应的字段会返回NULL,筛选这类记录即可得到目标用户。

方案2:NOT EXISTS 子查询(逻辑直观)

SELECT *
FROM 左表
WHERE NOT EXISTS (
    SELECT 1
    FROM 右表
    WHERE 右表.user_id = 左表.user_id
);

逐个检查左表的用户,仅保留那些在右表中完全不存在的记录,逻辑更直白,部分数据库下性能表现更优。

方案3:EXCEPT 集合运算(适用于支持该语法的数据库)

如果你的数据库支持集合运算(如PostgreSQL、SQL Server、MySQL 8.0+等),可以直接取两张表的差集:

SELECT user_id, 其他用户字段
FROM 左表
EXCEPT
SELECT user_id, 其他用户字段
FROM 右表;

注意:两个查询的字段数量、数据类型必须完全一致,由于你的两张表结构完全相同,直接对应字段即可。

注意事项

  • 必须使用唯一标识用户的字段(如user_id)进行关联,避免用可能重复的字段(如用户名)导致结果错误
  • 若表数据量较大,建议给关联字段添加索引,提升查询效率

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 11:02:34