最好在查询中使用 DISTINCT 进行过滤,或者在解析所述查询的结果时使用 java 的集合
Better to filter using DISTINCT in query or use java's set when parsing said query's results
问题如题。我正在查询 table 以获得一对值,我只想保存每个值的一对。使用起来是否更快:
- PostgreSQL 中的 DISTINCT 子句并将该责任交给数据库
- 将查询结果解包到对象时使用 Java 的 Set
这两个结果应该是一样的,但是一个本质上就比另一个好吗?
您需要编组、传输和解组的数据越少,您的操作就会越快。这意味着,在您的情况下,从数据库中获取唯一数据比获取非唯一数据并在以后派生唯一数据集更可取。
通常最好在数据库中进行尽可能多的数据处理。毕竟,这就是它的用途。有一个 effort/complexity 阈值,它可以更有意义地处理客户端代码中的数据,但查找唯一值是最简单的操作之一。
问题如题。我正在查询 table 以获得一对值,我只想保存每个值的一对。使用起来是否更快:
- PostgreSQL 中的 DISTINCT 子句并将该责任交给数据库
- 将查询结果解包到对象时使用 Java 的 Set
这两个结果应该是一样的,但是一个本质上就比另一个好吗?
您需要编组、传输和解组的数据越少,您的操作就会越快。这意味着,在您的情况下,从数据库中获取唯一数据比获取非唯一数据并在以后派生唯一数据集更可取。
通常最好在数据库中进行尽可能多的数据处理。毕竟,这就是它的用途。有一个 effort/complexity 阈值,它可以更有意义地处理客户端代码中的数据,但查找唯一值是最简单的操作之一。