可以说我有一个非常大的表填充了大量的数据(比如,足够不适合在内存中),我想分析行的子集.通常做得更快:SELECT (column1, column2, ... , columnN) FROM table WHERE (some complicated boolean clause);然后使用Re...
可以说我有一个非常大的表填充了大量的数据(比如,足够不适合在内存中),我想分析行的子集.
通常做得更快:
SELECT (column1, column2, ... , columnN) FROM table WHERE (some complicated boolean clause);
然后使用ResultSet,或者更快做到:
SELECT (column1, column2, ... , columnN) FROM table;
然后迭代ResultSet,根据你的布尔条件的java版本接受不同的行?
我认为这取决于Java迭代器/布尔评估器是否比MySQL布尔评估器更快.
解决方法:
将条件发送到数据库几乎肯定更快.
>您避免传输大量您不需要的数据行.
>数据库可能比表扫描更快地使用某些东西.它可能能够使用一个索引,使其能够更快地找到有趣的行,而无需检查每一行的条件.
沃梦达教程
本文标题为:使用复杂的布尔值来限制MySQL端或Java端的ResultSet是否更快?
基础教程推荐
猜你喜欢
- SpringBoot使用thymeleaf实现一个前端表格方法详解 2023-06-06
- window 下 win10 jdk8安装与环境变量的配置过程 2023-04-23
- 解决中文乱码的几种解决方法(推荐) 2023-08-02
- 智能 AI 代码生成工具 Cursor 安装和使用超详细教程 2023-07-15
- 老生常谈Java中List与ArrayList的区别 2023-05-08
- 初探Java内部类的使用 2023-05-25
- RxJava2 Scheduler使用实例深入解析 2023-06-23
- Java Ribbon与openfeign区别和用法讲解 2023-03-22
- SSM框架整合JSP中集成easyui前端ui项目开发示例详解 2023-07-30
- 微信小程序获取手机号的完整实例(Java后台实现) 2023-01-09