› MySQL 5.5 Community Server
› MySQL 5.6 Community Server
› Percona Configuration Wizard
› XtraBackup 搭建主从复制
Great Sites on MySQL
› Percona
› MySQL Performance Blog
› Severalnines
推荐管理工具
› Sequel Pro
› phpMyAdmin
推荐书目
› MySQL Cookbook
MySQL 相关项目
› MariaDB
› Drizzle
参考文档
› http://mysql-python.sourceforge.net/MySQLdb.html
deasty
V2EX  ›  MySQL

大家帮我估算一下这个查询所需要的时间

  •  
  •   deasty · Feb 22, 2019 via iPhone · 5255 views
    This topic created in 2775 days ago, the information mentioned may be changed or developed.
    一个大表,8 个字段,1400 万行,没有索引,打算执行下面的查询
    select * from tab1 where userid in(select userid from tab1 where mm = 6)
    已知 mm = 6 的 userid 有 18000 个
    求估算输出结果大概需要多少时间
    12 replies  •  2019-02-24 11:14:46 +08:00
    feiyuanqiu
        1
    feiyuanqiu  
       Feb 22, 2019 via Android
    explain 一下
    ppyax
        2
    ppyax  
       Feb 23, 2019 via Android
    in 不能超 1000
    1762628386
        3
    1762628386  
       Feb 23, 2019
    @ppyax 为啥
    Leigg
        4
    Leigg  
       Feb 23, 2019 via iPhone
    分钟级别至少的吧
    lynskylate
        5
    lynskylate  
       Feb 23, 2019 via Android
    in 是 n^2 的,写这种 sql review 的时候都会被打回去的
    binux
        6
    binux  
       Feb 23, 2019 via Android
    你干嘛不 select * from tab1 where mm = 6
    deasty
        7
    deasty  
    OP
       Feb 23, 2019 via iPhone
    @binux 因为需要查询 mm = 6 的用户历史数据,表中存在同一个用户 mm = 5 和 mm = 6 的不同情况,需要都查询出来
    opengps
        8
    opengps  
       Feb 23, 2019
    没有索引,那么时间至少是全表大小硬盘读出的时间,再加上运算所需要的时间。先忽略运算部分,光读出部分就很耗时间了
    leon0318
        9
    leon0318  
       Feb 23, 2019 via Android
    @lynskylate 如何优化呢?
    lynskylate
        10
    lynskylate  
       Feb 23, 2019 via Android
    @leonme 通常用 join 代替 in, join 字段加索引,这个时间复杂度通常来说是 o n 的
    winoros
        11
    winoros  
       Feb 24, 2019
    那么为什么不加索引呢
    luozic
        12
    luozic  
       Feb 24, 2019
    为啥不用索引? 这种多的,要么搞个专门查询的 es 什么的,要么出钱。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   884 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 20:45 · PVG 04:45 · LAX 13:45 · JFK 16:45
    ♥ Do have faith in what you're doing.