V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
rqxiao
V2EX  ›  程序员

sql not in 可以优化吗

  •  
  •   rqxiao · 2020-03-19 14:59:30 +08:00 · 2705 次点击
    这是一个创建于 1734 天前的主题,其中的信息可能已经有所发展或是发生改变。

    DELETE FROM a WHERE a.mobile NOT IN ( SELECT DISTINCT mobile FROM b WHERE mobile IS NOT NULL )

    比如这样的一条 sql 逻辑 ,not in

    数据量很大 删了好久

    7 条回复    2020-03-19 17:21:23 +08:00
    heaton_nobu
        1
    heaton_nobu  
       2020-03-19 15:49:33 +08:00
    1. NOT EXISTS
    2. LEFT JOIN
    ganbuliao
        2
    ganbuliao  
       2020-03-19 16:00:36 +08:00
    子查询当然慢了 和 not in 无关
    hammer86
        3
    hammer86  
       2020-03-19 16:04:13 +08:00 via iPhone
    not in 不走索引 所以慢
    sagaxu
        4
    sagaxu  
       2020-03-19 16:32:07 +08:00 via Android   ❤️ 1
    shangfabao
        5
    shangfabao  
       2020-03-19 16:34:32 +08:00
    left join * b
    where b.* is null
    alya
        6
    alya  
       2020-03-19 16:53:29 +08:00
    left semi join
    25OHd2qObJmJ6P10
        7
    25OHd2qObJmJ6P10  
       2020-03-19 17:21:23 +08:00
    IS NOT NULL 和 NOT IN 都不走索引,能不慢么,楼上都对
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3518 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 10:47 · PVG 18:47 · LAX 02:47 · JFK 05:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.