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

在MySQL中对比两张表的username字段并查询不匹配项

对比两张表username字段的不匹配记录查询方案

方法一:通过JOIN覆盖所有不匹配场景

这个查询会返回三类不匹配记录:两张表同ID但username不一致的记录、仅在t1存在的记录、仅在t2存在的记录,可精准得到你需要的目标结果:

-- 同ID但username不同的记录
SELECT t1.id, t1.username
FROM t1
INNER JOIN t2 ON t1.id = t2.id
WHERE t1.username <> t2.username

UNION ALL

-- 仅在t2存在的记录
SELECT t2.id, t2.username
FROM t2
LEFT JOIN t1 ON t2.id = t1.id
WHERE t1.id IS NULL

UNION ALL

-- 仅在t1存在的记录
SELECT t1.id, t1.username
FROM t1
LEFT JOIN t2 ON t1.id = t2.id
WHERE t2.id IS NULL;

方法二:联合分组筛选唯一存在的记录

将两张表数据合并后,筛选出合并结果中仅出现一次的记录(即不同表同ID不同名、或仅单表存在的记录):

SELECT id, username
FROM (
    SELECT id, username FROM t1
    UNION ALL
    SELECT id, username FROM t2
) AS combined_data
GROUP BY id, username
HAVING COUNT(*) = 1;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 08:45:32