【问题标题】:MySQL select/insert/update, does column order matter?MySQL选择/插入/更新,列顺序重要吗?
【发布时间】:2014-08-01 07:16:49
【问题描述】:

在我的 mysql 数据库中,我有字段 id、姓名、电子邮件、年龄、城市、电话。按这个顺序

就速度/其他而言,我选择/插入/更新这些的顺序重要吗?

如果我说

SELECT phone, city, name, id, age, email FROM tablename
// mixed up order

相对

SELECT id, name, email, age, city, phone FROM tablename
// original order of columns

编辑:不仅仅是一个小的简单查询(只是一个例子)。还关注 100.000 行和多个/高级查询和循环

【问题讨论】:

    标签: mysql database


    【解决方案1】:

    不,您选择的顺序无关紧要。为了提高速度,您可以使用索引或仅选择您实际需要的列。选择时,它们将按照您选择的顺序返回。您还可以使用 GROUP BY 按特定列对结果进行分组。

    “这不会有任何区别。

    但是,省略 SELECT 子句中的列会使其运行得更快,因为它会通过网络发送更少的数据。”

    来源:Does the order of columns in a select statement affect query speed?

    【讨论】:

    • 是的,好的。我担心的是,如果数据库使用额外的时间来查找正确的列(如果它们是混合顺序)
    • 我会说不。如果是这样,它就非常微不足道了,尤其是如果它是一个简单的查询。
    • 查看答案的底部编辑。你知道这一点还是你凭直觉猜测? ;)
    • 凭直觉猜测!哈哈。如果有那么大的问题,您可以自己测试一下吗?
    • ;) 是的,我可以。但有些人知道答案,我敢肯定。这不是一个大问题,只是想使用最佳实践/方法
    猜你喜欢
    • 1970-01-01
    • 2018-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-19
    • 2016-07-04
    • 1970-01-01
    相关资源
    最近更新 更多