Oracle排差调试技巧

标签 oracle oracle10g

我在生产环境中运行一个查询,据说返回了 500 行,我在我的开发中有相同的副本,但查询只返回 497 行。

可以采取什么方法或步骤来比较结果?

有工具吗?

最佳答案

假设两个数据库之间存在数据库链接,并且返回的数据与大多数相关行匹配,您可以使用 MINUS 运算。有点像

SELECT list_of_columns
  FROM some_table
 WHERE some_criteria
MINUS
SELECT list_of_columns
  FROM some_table@db_link_to_dev
 WHERE some_criteria

将向您显示第一个查询返回的行与第二个查询返回的行没有完全匹配的行。理想情况下,这只会显示额外的三行。但如果为某些列返回的数据在两种环境中不同,它可能会返回额外的行。

关于Oracle排差调试技巧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6282784/

相关文章:

java - 使用 Java-JDBC 从 Oracle 数据库读取数据时的字符编码

php - 非法变量名称/编号

oracle - 没有映射的Doctrine 2.0 native 查询

mysql - 是否可以在列大小不匹配的情况下创建外键

sql - 我见过一个,但是……10 克包裹到底是什么?

database - 如何从日期 01-01-9999 的 oracle 日期字段中获取以毫秒为单位的时间

SQL查询每天最新记录

找不到 Python 模块 "cx_Oracle"模块

oracle - 如何使用普通游标中的值打开 sys_refcursor?

sql - Oracle:分割分隔字符串并选择大于输入日期的日期