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

如何查询表中colA与另一行colB相等的行及ID?

解决方案

可以通过**自连接(Self-Join)**实现需求,核心是将表与自身关联,匹配一行的colA和另一行的colB。

1. 找出所有符合条件的行对(含双方ID)

假设你的表名为your_table,执行以下SQL语句:

SELECT
    t1.id AS id_from_colA_row,
    t1.colA,
    t2.id AS id_from_colB_row,
    t2.colB
FROM
    your_table t1
JOIN
    your_table t2 ON t1.colA = t2.colB
WHERE
    t1.id != t2.id; -- 排除同一行的自匹配,不需要可移除
  • t1和t2是同一张表的别名,分别代表“持有colA的行”和“持有匹配colB的行”
  • 保留WHERE条件可以避免同一行中colA和colB相等时的无效匹配

2. 仅获取存在匹配的行(不展示匹配行详情)

如果只需要找出有对应匹配行的那些记录,用EXISTS子查询更高效:

SELECT
    id,
    colA,
    colB
FROM
    your_table t1
WHERE
    EXISTS (
        SELECT 1
        FROM your_table t2
        WHERE t2.colB = t1.colA
        AND t1.id != t2.id -- 按需决定是否保留
    );

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 02:10:36