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

多表关联查询求助:关联A、B表并基于C表分组展示用户与组

解决方案

可以通过INNER JOIN关联三个表实现需求,INNER JOIN会自动过滤掉仅在单表存在的记录,只保留三方匹配的结果。

假设表A的用户ID字段为userId(对应表C的userId),表B的组ID字段为groupId(对应表C的groupId),执行以下SQL语句即可:

SELECT a.user, b.group
FROM C
INNER JOIN A ON C.userId = A.userId
INNER JOIN B ON C.groupId = B.groupId;

补充说明:

  • 如果表A/B的主键字段和表C的关联字段名称不一致,只需修改ON条件中的字段名即可
  • 若表C存在重复的用户-组关联记录,可通过DISTINCT或GROUP BY去重:
    • 使用DISTINCT:
      SELECT DISTINCT a.user, b.group
      FROM C
      INNER JOIN A ON C.userId = A.userId
      INNER JOIN B ON C.groupId = B.groupId;
      
    • 使用GROUP BY:
      SELECT a.user, b.group
      FROM C
      INNER JOIN A ON C.userId = A.userId
      INNER JOIN B ON C.groupId = B.groupId
      GROUP BY a.user, b.group;
      

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 02:19:52