方法一、用PL/SQL DEVELOPER 來比較

創(chuàng)新互聯(lián)公司于2013年開始,先為路南等服務建站,路南等地企業(yè),進行企業(yè)商務咨詢服務。為路南企業(yè)網站制作PC+手機+微官網三網同步一站式服務解決您的所有建站問題。
1.登陸數(shù)據(jù)庫A.
2.打開TOOLS菜單下的Compare User Objects
3.點Target Session,登陸數(shù)據(jù)庫B
4.執(zhí)行Compare
5.返回的是所有不同的對象以及更新語句[@more@]方法二、
1、對需要比較的表進行分析(可全表可抽樣,自選),否則統(tǒng)計信息不準;
2、通過dba_tab_col_statistics表的column_name字段進行比較
select tz.table_name ,tz.column_name from dba_tab_col_statistics tz
WHERE tz.owner = 'BSS' AND TZ.TABLE_NAME LIKE 'BSS_%'
and (TZ.TABLE_NAME ,TZ.COLUMN_NAME) not in(
select TZT.TABLE_NAME ,TZT.COLUMN_NAME
from dba_tab_col_statistics@tz_bsstzt tzt
WHERE tzt.owner = 'BSS' AND TZT.TABLE_NAME LIKE 'BSS_%')
例如:核對web層和mid層保費收入的差異:
首先把這兩個模塊看做兩張表,而且這兩個模塊出的字段一致,需要編號和錢,核對這個錢的數(shù)據(jù)為啥不對。
①WEB層
SELECT SUM(A.PREMIUMCNY) "保費收入(含稅) "
FROM WEB_XG_SALESMAN_RISK_ALL A
WHERE TRUNC(A.STATDATE) BETWEEN DATE '2019-09-01' AND DATE '2019-09-30';
②MID層
SELECT SUM(NVL(A.PREMIUM, 0)) AS 保費收入
FROM MID_CB_PREMIUM_RISK_ALL A
WHERE TRUNC(A.STATDATE) BETWEEN DATE'2019-09-01' AND DATE'2019-09-30';
----------------------------------------------------------------------------------------
結果:(需要把兩個模塊的編號 和 錢 都寫出來)
SQL:
SELECT A.POLICYNO, --編號
SUM(A."保費收入(含稅) ") AS BFSRHS,
B.POLICYNO,
SUM(B.保費收入) AS BFSR
FROM
(SELECT A.POLICYNO,SUM(A.PREMIUMCNY) "保費收入(含稅) "
FROM WEB_XG_SALESMAN_RISK_ALL A
WHERE TRUNC(A.STATDATE) BETWEEN DATE '2019-09-01' AND DATE '2019-09-30'
GROUP BY A.POLICYNO
) A
FULL JOIN
(SELECT A.POLICYNO,SUM(NVL(A.PREMIUM, 0)) AS 保費收入
FROM MID_CB_PREMIUM_RISK_ALL A
WHERE TRUNC(A.STATDATE) BETWEEN DATE'2019-09-01' AND DATE'2019-09-30'
GROUP BY A.POLICYNO
) B
ON A.POLICYNO = B.POLICYNO --用編號關聯(lián)
WHERE A.POLICYNO IS NULL OR B.POLICYNO IS NULL --是否一致
OR A.BFSRHS B.BFSR
group BY A.POLICYNO,
B.POLICYNO
如有兩張相同表結構的表:
test表:
test1表:
現(xiàn)在要找出兩張表有差異的數(shù)據(jù),需要用minus及union的方式查找出來,語句如下:
select?t1.*?from
(select?*?from?test
minus
select?*?from?test1)?t1
union?
select?t2.*?from
(select?*?from?test1
minus
select?*?from?test)?t2;
查詢結果如下,紅框部分的數(shù)據(jù)就是有差異的內容。
(1)oradata:打開這個文件夾,里面是一個以數(shù)據(jù)庫名(而不是實例名)命名的文件夾,我們喜歡將其命名為“orcl”。把orcl打開,看到的文件就是Oracle數(shù)據(jù)庫的大部分內容了,也是DBA需要管理的東西。這些文件可以分成三類:
*.ctl:控制文件 (至少一個,一般是三個)
*.dbf:數(shù)據(jù)文件(分為系統(tǒng)數(shù)據(jù)文件和用戶數(shù)據(jù)文件)
*.log:在線重做日志文件(至少兩個,默認安裝是三個,Oracle9i 下為 100M 大小)
我們在后繼課程中會詳細講述這些文件的特性和用處。
你是兩個數(shù)據(jù)庫還是一個庫下的兩個USER!~
如果是一個庫里的兩個user
SELECT * FROM SANWA_ADMIN.MU010,UCOOP.MC00030
在表前面加上用戶名就可以了!~
你還是詳細說下吧!~
分享題目:oracle如何比對 oracle如何比對時間
分享路徑:http://chinadenli.net/article26/hghgjg.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網站、網站排名、網站策劃、網站建設、ChatGPT、云服務器
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)