订购方式还是排序?

时间:2019-11-06 10:52:50

标签: mysql sql performance sorting sql-order-by

我不知道这个问题是否像我脑海中听起来那样愚蠢,但是做些更明智的选择是什么?在SQL中使用Order By或在逻辑代码中提取结果后进行排序;明智的决策绩效是什么?

2 个答案:

答案 0 :(得分:3)

有很多理由认为数据库排序是更好的选择:

  • 通常,数据库服务器比客户端计算机更强大。
  • 数据库可以优化查询,因此也许不需要排序。例如,MySQL也许可以使用索引,而避免完全排序。
  • 数据库可以利用其他处理器(也许还有其他资源)来加快排序速度。

此逻辑不仅适用于排序,还适用于其他大数据操作。通常,在数据库上进行工作是更好的选择。

当然,如果您只有很少的几行,那么您可能根本不会注意到太大的区别-对10行进行排序不会花费很多时间。

答案 1 :(得分:-3)

我认为,如果您要对大量数据进行排序,则可以使用ORDER BY并对数据库本身进行排序。如果您要对少量数据进行排序,则可以在数据库或代码中对其进行排序。

有关更多信息,您可以检查以下线程 database sort vs. programmatic java sort