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

能否用SQL生成事件参与者的无重复配对?如何实现?

可以用SQL实现,解决方案如下

假设你导入后的MySQL表名为event_participants,通过**自连接(Self Join)**就能生成符合要求的参与者配对,不需要额外重置计数器。

核心SQL代码

SELECT 
    t1.EventID,
    t1.PersonID AS Person1ID,
    t2.PersonID AS Person2ID
FROM 
    event_participants t1
JOIN 
    event_participants t2 
ON 
    t1.EventID = t2.EventID
    AND t1.PersonID < t2.PersonID
ORDER BY 
    t1.EventID, Person1ID, Person2ID;

代码逻辑说明

  • 自连接:将表与自身关联,实现同一事件内参与者的组合匹配。
  • t1.EventID = t2.EventID:确保配对仅在同一个事件范围内生成。
  • t1.PersonID < t2.PersonID:这是核心过滤条件,既排除了A与A这类自配对,又避免了A,B和B,A这类反向重复配对——只有当Person1的标识小于Person2时才会被选中,每个配对仅出现一次。
  • 排序:按事件ID、参与者ID排序,让结果更规整易读。

用你提供的示例数据运行这段SQL,会直接输出符合要求的配对结果,与示例输出完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 05:59:57