使用OR时如何优化MySQL表中的搜索?

艾哈迈德·哈达德

我最近了解到,可以通过使用以下带有OR的select语句来跨多个列在MySQL表中进行搜索:

SELECT * data WHERE TEMP = "3000" OR X ="3000" OR Y="3000";

该命令返回所需的结果,但是在只有约26万行的表中返回结果大约需要1.7秒。我还已经为搜索的每个列添加了索引。

有没有一种方法可以优化此查询?还是有另一个更快但返回相同结果的方法?

巴里

另一种选择是使用UNION ...

SELECT * FROM data WHERE TEMP = "3000"
UNION
SELECT * FROM data WHERE X ="3000"
UNION
SELECT * FROM data WHERE Y="3000";

...然而,提高性能的真正关键首先是索引,其次是查询分析器。通常,数据确定哪个更快,因为TEMP可能比Y为“ 3000”的可能性小一百倍-因此,例如,它应该在原始OR语句中排在第一位。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用索引优化此MySql表以提高搜索速度?

来自分类Dev

在类别中搜索时如何优化联接

来自分类Dev

如何使用户表最容易在MySQL中搜索?

来自分类Dev

MySQL中的搜索查询优化

来自分类Dev

MySQL中的搜索查询优化

来自分类Dev

使用PHP在mysql表中搜索标签

来自分类Dev

如何优化使用IN的MySQL

来自分类Dev

如何使用ormlite在多个表中搜索

来自分类Dev

如何使用连接从表中搜索?

来自分类Dev

通过MySQL中的哈希优化搜索

来自分类Dev

如何使用php将mysql数据表搜索查询导出到csv中?

来自分类Dev

如何使用php和mysql在一个表中搜索记录是否存在

来自分类Dev

如何使用codeigniter活动记录在mysql表的单个字段中搜索多个值?

来自分类Dev

如何使用 PHP 和 MySQL 根据表中的搜索值更新数据

来自分类Dev

如何优化VBA代码以从其他工作表中搜索值

来自分类Dev

如何搜索仍在优化中的TFS项目?

来自分类Dev

在删除搜索栏中的值时如何更新表?

来自分类Dev

如何使用空列优化MySQL中的索引?

来自分类Dev

在MySQL中创建表查询时如何使用变量作为表名?

来自分类Dev

如何从MySQL PHP的两个表中搜索

来自分类Dev

优化MySQL全文搜索

来自分类Dev

优化MySQL搜索查询

来自分类Dev

在mysql表中搜索列?

来自分类Dev

在PHP中搜索MySQL表

来自分类Dev

使用 MyISAM 优化所有 MySQL 表

来自分类Dev

搜索时如何在准备方法中编写MySQL查询?

来自分类Dev

使用PHP和MySQL时,如何搜索比常规更长的内容?

来自分类Dev

如何在.htaccess中强制使用斜杠并优化搜索引擎?

来自分类Dev

当我的列不在表和属性中时,如何使用zii.widgets.grid.CGridView进行搜索和排序?

Related 相关文章

热门标签

归档