SELECT Query最佳实践

时间:2013-05-16 03:35:31

标签: mysql sql sql-server sqlite

我知道SELECT *被认为是不好的做法,因为它可以返回不需要的信息。

但是这个怎么样:

假设我有一个包含4列的表,列1-4

这两个查询之间是否存在差异(如快速,性能)?

SELECT col_1,col_2,col_3,col_4 FROM ...

SELECT col_2,col_4,col_1,col_3 FROM ...

仅供参考:第一个查询与数据库列的顺序相同,但第二个查询不关心数据库表列的顺序。

3 个答案:

答案 0 :(得分:1)

出于所有意图和目的,没有。

答案 1 :(得分:0)

两个查询中的速度应该相同。

为确保这一点,请在每次查询之前和之后打印时间戳,以便您自己查看。

祝福,

答案 2 :(得分:0)

如果没有where子句,假设您已列出表中的所有列,则所有三个查询都将执行相同的操作。如果您有主键,那么这些查询将进行聚簇索引扫描,否则进行表扫描,这基本上是相同的。