关于“怎么比较两个SQL查询语句产生的结果集是否相同”搜集到的一些资料
一、
如果你这两个结果集都没有close,可以这样:
rs.last();
rs2.last();
if (rs.getRow() != rs2.getRow()) {
//记录数不等,即结果不等
}
rs.first();
rs2.first();
while (rs.next() && rs2.next()) {
if (Math.abs(rs.getFloat(2) - rs2.getFloat(2)) > 0.00000001) {
//记录值不等
break;
}
}
二、
来自百度知道的网友回答
//结果集有5列(根据情况调整):empno, ename, sal, hiredate, deptno
public static String []columns = {"empno", "ename", "sal", "hiredate", "deptno"}; //结果集rs1和rs2, 判断rs1与rs2中是否有相同元素
public static boolean hasSame(ResultSet rs1, ResultSet rs2) throws SQLException{
List<Map<String, Object>> list1 = new ArrayList<Map<String, Object>>();
List<Map<String, Object>> list2 = new ArrayList<Map<String, Object>>();
int i;
while(rs1.next()){
Map<String, Object> map = new HashMap<String, Object>();
for(i = 0; i < columns.length; i++){
map.put(columns[i], rs1.getObject(columns[i]));
}
list1.add(map);
} while(rs2.next()){
Map<String, Object> map = new HashMap<String, Object>();
for(i = 0; i < columns.length; i++){
map.put(columns[i], rs2.getObject(columns[i]));
}
list2.add(map);
} for(Map<String, Object> map: list1){
if(list2.contains(map)){
return true;
}
} return false;
}
三、参考http://blog.csdn.net/terryhuang/article/details/8621021 重点摘录如下:
oracle 解决方案
- (select * from a1
- minus
- select * from a2
- )
- union all
- (select * from a2
- minus
- select * from a1
- )
照这展开优化下
(A minus B)union (B minus A) 如果得到的结果是空,证明一致。
另外参考一下http://www.itpub.net/thread-1066538-1-1.html
四、
select Cause, Rate
from (
select Cause, Rate from A1
union all
select Cause, Rate from A2)
group by Cause, Rate
having count(*) < 2
如果结果集为NULL,就可以判断该结果集是一致的。。。
关于“怎么比较两个SQL查询语句产生的结果集是否相同”搜集到的一些资料的更多相关文章
- sqlserver 把两个sql查询语句查询出来的两张表合并成一张表
第一个sql语句 select companyname gsmc,zb zhibiao from t_gsndzb left join t_companycode on t_gsndzb.gsbh=t ...
- Java 获取SQL查询语句结果
step1:构造连接Class.forName("com.mysql.jdbc.Driver"); Connection con = DriverManager.getConnec ...
- [数据库] SQL查询语句表行列转换及一行数据转换成两列
原文来自:http://blog.csdn.net/Eastmount/article/details/50559008 本文主要讲述了SQL查询语句表之间的行列转换,同时也包括如何将一行数据转换成两 ...
- sql查询语句如何解析成分页查询?
我们公司主要mysql存储数据,因此也封装了比较好用mysql通用方法,然后,我们做大量接口,在处理分页查询接口,没有很好分查询方法.sql查询 语句如何解析成“分页查询”和“总统计”两条语句.可能, ...
- SQL查询语句去除重复行
1.存在两条完全相同的纪录 这是最简单的一种情况,用关键字distinct就可以去掉 select distinct * from table(表名) where (条件) 2.存在部分字段相同的纪录 ...
- (转)经典SQL查询语句大全
(转)经典SQL查询语句大全 一.基础1.说明:创建数据库CREATE DATABASE database-name2.说明:删除数据库drop database dbname3.说明:备份sql s ...
- 转: 从Mysql某一表中随机读取n条数据的SQL查询语句
若要在i ≤ R ≤ j 这个范围得到一个随机整数R ,需要用到表达式 FLOOR(i + RAND() * (j – i + 1)).例如, 若要在7 到 12 的范围(包括7和12)内得到一个随机 ...
- 经典SQL查询语句大全
一.基础1.说明:创建数据库CREATE DATABASE database-name2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备份数 ...
- SQL查询语句分类
SQL查询语句有多种,下面总结下.首先先建三张表用于后面的实验 -- 学生表,记录学生信息 CREATE TABLE student( sno ), sname ), ssex ENUM('男','女 ...
随机推荐
- Hibernate笔记——Hibernate介绍和初次环境配置
Hibernate简介 Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. Hibernate ...
- 使用struts taglib导致java.lang.NullPointerException: Module 'null' not found.
比如说,只要jsp的代码里有<html:....>或者<bean:...>之类的struts标签就会在访问该jsp页面的时候报这个错 最后参考这篇文章,发现原来是因为web.x ...
- How to fix broken packages?(转)
Try Code: sudo apt-get update to update your package list.Then Code: sudo apt-get autoclean to clean ...
- AOJ 2170 Marked Ancestor (基础并查集)
http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=45522 给定一棵树的n个节点,每个节点标号在1到n之间,1是树的根节点,有如 ...
- ogre--hlsl--矩阵
重要注释——矩阵的顺序:有一件事需要牢记,HLSL允许你使用2种不同方式处理矩阵和向量相乘——mul(v,m)或者mul(m,v).二者之间唯一的区别就是矩阵被有效地变换.在OGRE中传递矩阵你应该使 ...
- 关于VECTOR和DEQUE
http://www.cnblogs.com/ixnehc/archive/2008/09/02/1282356.html *.先说内部结构.vector就是一块连续的内存,这块连续的内存会随着成员 ...
- 函数lock_rec_create
/*********************************************************************//** Creates a new record lock ...
- Spring MVC 下index.jsp访问
spring-mvc.xml配置 <!-- 对模型视图名称的解析,即在模型视图名称添加前后缀 --> <bean class="org.springframework.we ...
- POJ 1743 (后缀数组 二分) Musical Theme
看来对height数组进行分段确实是个比较常用的技巧. 题意: 一个主题是可以变调的,也就是如果这个主题所有数字加上或者减少相同的数值,可以看做是相同的主题. 一个主题在原串中至少要出现两次,而且一定 ...
- Typed Message模式与Event Sourcing
引言 在<设计模式沉思录>(Pattern Hatching: Design Patterns Applied,[美]JohnVlissides著)一书的第4章中,围绕事件Message传 ...