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

如何查询存储于PNMS表的社交活动所有参与人员的first_name与last_name

问题分析
  • 现有查询的JOIN链路仅覆盖「社交活动关联负责高管→对应成员→PNMS」路径,未处理社交活动直接关联的普通参与成员,无法返回所有参与人员
  • INNER JOIN 会自动过滤se.executive_id为空的社交活动记录,WHERE条件里的se.member_id IS NOT NULL完全不会生效,导致只能返回有关联高管的活动记录
  • 当前JOIN逻辑是把高管和成员做关联拼接,而非分别提取两类参与人员,自然每个活动只能返回1条结果
调整后的查询方案

使用UNION ALL分别查询负责高管、普通参与成员两类人群的信息,再合并结果集,即可实现同个活动返回多名关联人员的需求:

-- 查询社交活动关联的负责高管
SELECT
    pm.first_name,
    pm.last_name,
    se.socialevent_id,
    se.title,
    '负责高管' AS participant_type -- 可选字段,用于区分人员类型,不需要可删除
FROM
    354groupb1.social_event se
    INNER JOIN 354groupb1.executive e ON se.executive_id = e.executive_id
    INNER JOIN 354groupb1.member m ON e.member_id = m.member_id
    INNER JOIN 354groupb1.pnms pm ON m.net_id = pm.net_id
WHERE se.executive_id IS NOT NULL

UNION ALL

-- 查询社交活动关联的普通参与成员
SELECT
    pm.first_name,
    pm.last_name,
    se.socialevent_id,
    se.title,
    '参与成员' AS participant_type -- 可选字段,用于区分人员类型,不需要可删除
FROM
    354groupb1.social_event se
    INNER JOIN 354groupb1.member m ON se.member_id = m.member_id
    INNER JOIN 354groupb1.pnms pm ON m.net_id = pm.net_id
WHERE se.member_id IS NOT NULL;

如果同一个人同时是活动的负责高管和参与成员,不需要重复返回记录时,把UNION ALL替换为UNION即可实现自动去重。


内容的提问来源于stack exchange,提问作者zniperxpert games and tips

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 10:24:09