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

编写SQL查询获取用户子女好友的联系人子女的朋友

解决方案:获取身为用户子女好友的联系人子女的朋友

我来帮你拆解这个需求并写出对应的SQL查询。首先得把各个表之间的关联逻辑理清楚,不然容易绕晕:

咱们要找的是满足以下条件的用户Y:

  • Y是某个用户X的好友
  • X是原用户U的联系人C的子女
  • 同时X还是原用户U的子女K的好友

接下来直接上SQL代码,我给每个表加了别名,方便理解:

SELECT DISTINCT
    uf_target.friend_id AS target_friend_id,
    u.user_id AS original_user_id,
    uc.contact_id AS contact_id,
    ac_contact.child_id AS contact_child_id,
    ac_user.child_id AS original_user_child_id
FROM
    UserTable u
JOIN AdultChild ac_user 
    ON u.user_id = ac_user.user_id  -- 关联原用户和他们的子女
JOIN UserFriends uf_child 
    ON ac_user.child_id = uf_child.child_id  -- 找到原用户子女的好友(也就是X)
JOIN AdultChild ac_contact 
    ON uf_child.friend_id = ac_contact.child_id  -- 确认X是某个用户的子女(这里就是联系人C的子女)
JOIN UserContact uc 
    ON ac_contact.user_id = uc.contact_id 
    AND uc.user_id = u.user_id  -- 确保这个用户C是原用户U的联系人
JOIN UserFriends uf_target 
    ON ac_contact.child_id = uf_target.child_id  -- 找到X的好友(也就是我们要的Y)
-- 如果要针对特定原用户查询,添加下面的WHERE条件
-- WHERE u.user_id = 你的目标用户ID

代码细节说明:

  • 用DISTINCT是为了避免重复结果(比如同一个Y可能被多个关联路径找到)
  • 每个JOIN都对应了咱们之前梳理的逻辑链条,一步步缩小范围,最终定位到目标用户Y
  • 输出字段里包含了各个关联环节的ID,方便你后续验证或者扩展使用

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:59:20