mysql - SQL:如何优化单个表上的多个 SELECT

标签 mysql sql optimization select indexing

我创建了一个表

CREATE TABLE xy (
blub VARCHAR(50) NOT NULL,
z INT UNSIGNED NOT NULL,
PRIMARY KEY (blub)
)

并希望通过“blub”列一次查询多个条目。目前我正在使用简单查询

SELECT blub, z FROM xy WHERE blub = '...'

快多了
SELECT blub, z FROM xy WHERE blub = '...' OR blub = '...' OR '...

是否有任何其他方法可以使其更快并合并所有查询?

最佳答案

您可以尝试使用 in 子句。我不确定它会更快,但肯定会更简洁。例如:

select blub, z from zy where blub in ('this', 'that', 'theother');

explain会告诉您哪种情况实际上最快。

关于mysql - SQL:如何优化单个表上的多个 SELECT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10341618/

相关文章:

mysql - SQL LEFT JOIN“不支持JOIN表达式”

MySQL SELECT 范围基于舍入到适当的 10 次方

mysql - 如何使用sql语句进行搜索?

c# - 通过 C 和/或汇编帮助优化 C# 函数

java - 如何优化选择许多行和列的 Java JDBC 代码

mysql - 创建哈希的 SQL 语法

php - MySQLI 更新不起作用且未返回任何错误

asp.net - ASP 后面带有 SQL DB 和 VB 代码。编辑返回的数据

mysql - 左连接与计数返回一个结果

python - scipy.optimize.curve_fit 不适合数据