MySQL 千万条数据 匹配一个状态 != 和 in() 那个更快呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 千万条数据 匹配一个状态 != 和 in() 那个更快呢?相关的知识,希望对你有一定的参考价值。

参考技术A 首先我这里有张表近三千万条的数据 表里有个状态(hotel_status)分别为1,2,3,4 想查出不等于4的 到底用!=还是in呢?

那我们就筛选一千万吧 我再后面加个 LIMIT 10000000吧

mysql查询六千万条数据不到1s正常吗

没添加索引之前两百万条数据都要超过1.5s,给表中的一个字段添加了索引之后,现在数据已经达到七千万了,可查询时间还是不到1s!是不是哪里出了问题,求解答

参考技术A 不怎么正常 通常mysql的性能 是没有 oracle的 好的。除了 你的sql 优化的特别好 。也是要超过一秒的。这么多数据 IO的追问

我也觉得不正常,可不知道怎么会这样啊?我数据库缓存都关了

参考技术B 只要内存能放下索引,你查询确实也用了索引,就会非常快 参考技术C 特定条件下完全 正常追问

什么特定条件?我只加了个索引而已

追答

数据整体不是很大, 索引是必须的。 如果数据超过500M,一秒钟从硬盘读数据的时间都不够。索引建立了, 查询的时间次数是很少的。

本回答被提问者采纳
参考技术D 政策的

以上是关于MySQL 千万条数据 匹配一个状态 != 和 in() 那个更快呢?的主要内容,如果未能解决你的问题,请参考以下文章

记录一次mysql导入千万条测试数据过慢的问题!

教程,使用YCSB测试MYSQL数据库,获取千万条测试后的数据

教程,使用YCSB测试MYSQL数据库,获取千万条测试后的数据

教程,使用YCSB测试MYSQL数据库,获取千万条测试后的数据

教程,使用YCSB测试MYSQL数据库,获取千万条测试后的数据

教程,使用YCSB测试MYSQL数据库,获取千万条测试后的数据