两个数据库中相同表的对比sql语句怎么写

两个数据库中相同表的对比sql语句怎么写,第1张

select

basename, baseyear

, a成绩 as [a表成绩]

, b成绩 as [b表成绩]

, case

when a成绩 is null then 'a表中不存在'

when b成绩 is null then 'b表中不存在'

when a成绩=b成绩 then '成功'

else '差异' end as 比较结果

from (

select name, year from tb_a

union

select name, year from tb_b

) as base

left join tb_a as a on aname=basename and ayear=baseyear

left join tb_b as b on bname=basename and byear=baseyear

如果你知道哪个表记录多的话,比如A多了

SELECT A,B FROM TABLEA A

LEFT JOIN TABLEB B ON AID=BID

这样能连出A表所有记录,B表没有的那些会以NULL值出现

查出没有的在语句后面加个条件

WHERE BID IS NULL

如果两个数据库可以建立dblink,那么通过dblink就可以像在一个数据库一样去对比。

如果不能建立dblink,那么就只能导出两行表,通过spool导出就可以。然后通过系统级别的命令去比对。我记得linux是有比较两个文件不同行的功能的。

如果认为两个都导出比较麻烦,那就导出一个,在导入另外一个库(注意变换名字,否则表明重复就麻烦了),然后再对比。

   SELECT adate_3 - bdate_3 FROM tab1 a,tab2 b WHERE bnumb = anumb

前提是tab1和tab2都要有对应的numb

你好!

先获取不重复的ID,即x、y表的不重复并集,观察x、y表结构类似,通过union进行排重即可。

使用第一步获取的数据进行左链接x、y表的扩展表(第3步)。

分别对x、y表进行分组并合计,针对中y表中ID为A的记录出现多次,最后显示为ID为A的盘点数量为2,这样的数据进行处理,以方便最后显示。

通过(库存数-盘点数)得到比对字段值。

SELECT

tID,

IFNULL(t`库存数量`, 0) `库存数量`,

IFNULL(t`盘点数量`, 0) `盘点数量`,

(

IFNULL(t`库存数量`, 0) - IFNULL(t`盘点数量`, 0)

) `比对`

FROM

(

SELECT

aID ID,

p1`库存数量`,

p2`盘点数量`

FROM

(

SELECT

ID

FROM

x

UNION

SELECT

ID

FROM

y

) a

LEFT JOIN (

SELECT

ID,

sum(`库存数量`) `库存数量`

FROM

x

GROUP BY

ID

) p1 ON aid = p1id

LEFT JOIN (

SELECT

ID,

sum(`盘点数量`) `盘点数量`

FROM

y

GROUP BY

ID

) p2 ON aid = p2id

) t

ORDER BY

ID

希望对你有帮助!

SELECT 表AZH_LABLE,表BZH_LABLE

FROM 表A FULL JOIN 表B ON 表AZH_LABLE=表BZH_LABLE

WHERE 表AZH_LABLE IS NULL OR 表BZH_LABLE IS NULL

insert

into

tablea

select

from

tablea

where

not

exists

(selelct

'1'

from

tableb

where

tableaserverid

=

serverid

and

tableadriverid

=

driverid

and

tableadriversize

=

driversize)

update

tablea

set

tableadriversize

=

tableadriversize

from

tablea

,tableb

where

tableaserverid

=

serverid

and

tableadriverid

=

driverid

如果你以tableb为准的话,你最好在tableb上加个触发器

以上就是关于两个数据库中相同表的对比sql语句怎么写全部的内容,包括:两个数据库中相同表的对比sql语句怎么写、sql数据库中如何对比两张表,求语句!!!!、在oracle中 怎样对比两个数据库中相同表的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10135366.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存