数据库排序与编程 Java 排序

2022-08-31 13:37:50

我想通过JPA从数据库(MySQL)中获取数据,我希望按某个列值排序。

那么,最佳实践是什么,以便:

  • 从数据库中检索数据作为对象列表 (JPA),然后使用一些 Java API 以编程方式对其进行排序。

  • 让数据库使用排序选择查询对其进行排序。

提前致谢


答案 1

如果要检索所有数据库数据的子集,例如在屏幕上显示 1000 行中的 20 行,则最好对数据库进行排序。这将更快,更容易,并且允许您一次检索一页行(20,50,100),而不是全部行。

如果数据集相当小,则如果要实现复杂排序,则在代码中进行排序可能会更方便。通常,这种复杂的排序可以在代码中完成,但不像在代码中那样容易。SQL

简而言之,经验法则是 排序方式 为 ,规则有一些边缘情况。SQL


答案 2

一般来说,你最好在SQL查询中使用 - 这样,如果有一个适用的索引,你可能会“免费”获得排序(最坏的情况是,它将与在代码中执行此操作的工作量相同,但通常它可能比这更少!ORDER BY


推荐