MySQL SELECT 查询性能

标签 mysql performance select

<分区>

我有一个查询,其中包含一个值列表,用于检查多列表中的单个列。

示例查询 ONE......

SELECT `name`, `sleeps` 
FROM `properties` 
WHERE `town`='bude' OR `town`='newquay' OR `town`='widemouth' OR `town`='polzeath' OR `town`='crantock' OR `town`='perranporth' OR `town`='Porthmeor' OR `town`='St Ives' OR `town`='porthtowan'

示例查询二......

SELECT `name`, `sleeps` 
FROM `properties` 
WHERE `town` IN ('bude', 'newquay', 'widemouth', 'polzeath', 'crantock', 'wadebridge', 'Porthmeor', 'St Ives', 'porthtowan')
    • -

我都在 phpmyadmin 中运行过,发现查询速度非常相似,都是一个包含大约 5,000 条记录的表。

就性能和持久性而言,当表包含更多数据时最好使用“IN”样式查询或使用多个实例还是?

谢谢

最佳答案

这是一个简单的测试结果,

SELECT * FROM item WHERE id = 1 OR id = 2 ... id = 10000
This query took 0.1139 seconds

SELECT * FROM item WHERE id IN (1,2,3,...10000)
This query took 0.0413 seconds

INOR

关于MySQL SELECT 查询性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17723083/

相关文章:

java sql向表中插入记录

MySQL 设计 : Seperate Schema or Table Prefixes?

PHP/MySQL : Order artist by ASC, 然后按 ASC 按艺术家排序歌曲?

sql - 不确定如何在 SQL Server 中订购它

php代码没有运行

php - 如何通过php更改mysql分隔符

Python 3 : Loops, 列表理解和映射比 Python 2 慢?

algorithm - 计算阶乘的快速算法

python - 有效地 reshape numpy 数组

select - Where 子句的字段顺序