Sql查询两张表的异同数据
发布网友
发布时间:2022-04-08 04:14
我来回答
共5个回答
热心网友
时间:2022-04-08 05:43
假设两个表都有唯一键UserID
可以这么写(使用全连接【full outer join】:完整外部联接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。)
select *from RCSA_UserInfoDEL a full outer join RCSA_UserInfo b on a.UserID=b.UserIDwhere a.UserID is null or b.UserID is null
热心网友
时间:2022-04-08 07:01
select * from 表一 where 姓名 not in (select 姓名 from 表二)
union all
select * from 表二 where 姓名 not in (select 姓名 from 表一)
热心网友
时间:2022-04-08 08:36
select name from table1 where not exists(select 1 from table2 where table2.name=table1.name)
热心网友
时间:2022-04-08 10:27
--except和intersect的用法
--t1中有而t2中没有的ID,会显示33
select ID from (select '11' ID union select '22' union select '33') t1
except
select ID from (select '11' ID union select '22' union select '44') t2
--t1中有而t2也有的ID,会显示11,22
select ID from (select '11' ID union select '22' union select '33') t1
intersect
select ID from (select '11' ID union select '22' union select '44') t2
热心网友
时间:2022-04-08 12:35
假设两个表都有唯一键UserID
可以这么写(使用全连接【full outer join】:完整外部联接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。)
select *from RCSA_UserInfoDEL a full outer join RCSA_UserInfo b on a.UserID=b.UserIDwhere a.UserID is null or b.UserID is null