女主宣言 什么情况?一个简单的 SQL 子查询,在几万条记录中查询,竟然用了 33 秒!快来看看,怎么跳过这个坑。 PS:丰富的一线技术、多元化的表现形式,尽在“HULK一线技术杂谈”,点关注哦! 前言 MySQL 是项目中常用的数据库,其中 in 查询也是很常用。最近项目调试过程中,遇到一个出乎意料的 select 查询,竟然用了 33 秒! 一、表结构 1. userinfo 表 2. article 表 二、问题 SQL 实例
大家第一眼看到上面的 SQL 时,可能都会觉得这是一个很简单的子查询。先把 author_id 查出来,再用 in 查询一下。 如果有相关索引会非常快的,拆解来讲就是以下这样的: 1.select author_id from artilce where type = 1; 2. select * from userinfo where id in (1,2,3); 但是事实是这样的: mysql |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|