mysql - 查询中列的顺序重要吗?

标签 mysql sql query-optimization

从 MySQL 表中选择列时,性能是否会受到您选择列的顺序与它们在表中的顺序相比的影响(不考虑可能覆盖列的索引)?

例如,您有一个包含行 uid、name、bday 的表,并且您有以下查询。

SELECT uid, name, bday FROM table

MySQL 是否会以不同的方式查看以下查询,从而导致任何类型的性能下降?

SELECT uid, bday, name FROM table

最佳答案

实际上,顺序并不重要,因此您可以随意订购它们。

编辑:我想更多的背景知识会有所帮助:据我所知,优化任何查询的过程发生在确定要提取行数据的确切子集之前。因此,查询优化器首先将其分解为要查看的表、要执行的连接、要使用的索引、要应用的聚合等,然后检索该数据集。列排序发生在数据拉取和结果集形成之间,因此数据实际上按照数据库的排序“到达”,然后在返回到您的应用程序时重新排序。

关于mysql - 查询中列的顺序重要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4582331/

相关文章:

mysql - 导入mysql数据库出错

sql - 仅对相邻行进行分组

mysql - 如何通过一个查询更新多行?

MySql:查询优化(多个左连接)

MySQL - 查询将整数按位字段拆分为每个位的 bool 列

mysql - 将多个房间可用性查询合并为一个

mysql - 如何在 module.export 函数中使用回调进行 mysql 查询 - nodejs,express

MySQL GROUP BY 与子查询(ies)

SQL 显示以前的值,直到给定值更改

mysql - 创建 sql 转储并将其保存到远程