java - 我可以用java代码替换查询,更好吗?
问题描述
我必须清点物品。
使用 count 进行选择是否更好,以便 db(postgreSQL) 可以快速执行它,或者访问 java 中的每个对象并对其进行计数?
在一种方式中,我将需要再次访问数据库,但在另一种方式中,我将循环大量对象。
考虑到应用程序是企业级的,所以我可以拥有数千个对象。
我需要最好的解决方案来优化它。
解决方案
@CarlosHeuberger 的评论很贴切,但各方面:
- 数据库可以做得更快;有元数据;可以遍历索引。
- 数据库缓存。(并发和重复调用。)
- 数据传输较少。
- 无需创建 java 对象,即使它们只是属于 ResultSet。
- Java 代码可能需要更多时间仔细阅读(维护)。
我不认为这里是这种情况,阅读问题。但对于其他人:
- 搜索计数以插入带有 id 的新记录
count + 1
是一个巨大的 NO。不安全并且存在更好的机制。
如果您这样做是为了分页,则不需要事先加载所有记录。
推荐阅读
- c - 在 8-alignment malloc 实现时我们如何处理 header
- sql - Is there a way to calculate correlation between two variables in SQL?
- google-sheets - 在 Google 表格中整理/汇总特定数据的有效方法
- php - PHP MySQL根据列/行值选择多个表
- r - 使用lowess平滑R中的data.table列时出现意外结果
- javascript - 如何将一些信息从一个 get/post 传递到另一个 get/post
- javascript - MongoDB 从日期中挑选数据
- python - Python:获取表中每一行的值的排序位置
- php - 在 WooCommerce 修复问题中购买 x 数量的特定产品类别时,根据用户角色应用折扣
- kubernetes - 入口重定向到 localhost tcp 服务