使用Toad从两个不同的数据库服务器进行SQL查询和交叉匹配数据

时间:2013-03-14 15:47:14

标签: sql oracle toad

我刚刚在SQL上分配了一个小任务,我对它已经过时了,我知道非常基本的东西,任务很繁琐,我确信有一个更简单的方法来做逐一。

以下是问题:

公司在不同服务器中有两个数据库(一个是Oracle),我使用Toad for Oracle来查询两个数据库。

我有一个Excel文件,其中包含6k收据编号的列表,这些收据编号原本应该已转移到Oracle但由于某些原因,并非全部都是这样,所以我需要检查两个数据库上的每个数字然后检查很少其他领域,如账单金额。最后一部分现在可以忽略。

我更倾向于在S​​QL中构建查询,或者在excel中构建一些公式,我可以在三列中粘贴数据,第一个DB的结果和第二个结果以及自动交叉检查。哦,差点忘了,所有数据源都会重复一些数字:S

任何帮助都会非常感激,希望我能够清楚地解释清楚。

1 个答案:

答案 0 :(得分:1)

有几种方法可以做到这一点。考虑到你的技能,我会这样做:

  1. 将数据粘贴到Excel中的N列。
  2. 使用N列中的数据在第一行创建SQL语句。应该是这样的:=concat("select ", A1 , " from dual where not exists (select 1 from receipts_table where receipt_id = '", A1, "');"为要检查的其他字段添加其他where子句。
  3. 将SQL复制/粘贴到Toad中并检查它是否运行。如果收据缺失或在Oracle中没有正确的值,它应该打印receipt_id。
  4. 在Excel中使用“Fill-> Down”为每张收据创建一个SQL。
  5. 将6k SQL语句复制到Toad并将其作为脚本运行。
  6. 找到产生输出的行。这些是丢失的收据。