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

SQL如何查询t1表中与t2表无匹配uid的对应car_id记录

实现方案

你可以用以下几种常见的SQL写法实现需求,都可以返回t1中t2没有匹配uid的记录:

  1. NOT IN写法(逻辑最简单易读)
    注意需要加t2.uid IS NOT NULL的过滤,避免t2的uid存在空值时NOT IN返回结果为空的问题:
SELECT uid, car_id
FROM t1
WHERE uid NOT IN (
    SELECT uid FROM t2 WHERE uid IS NOT NULL
);
  1. LEFT JOIN + 空值判断写法(大表场景性能更优)
SELECT t1.uid, t1.car_id
FROM t1
LEFT JOIN t2 ON t1.uid = t2.uid
WHERE t2.uid IS NULL;
  1. NOT EXISTS写法(生产环境常用,性能稳定)
SELECT uid, car_id
FROM t1
WHERE NOT EXISTS (
    SELECT 1 FROM t2 WHERE t2.uid = t1.uid
);

以上三种写法在你提供的测试数据中,都会返回uid: q123,car_id: 567的符合要求的记录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 11:09:01