两个表之间多字段的匹配!

 

/*
 一个项目中涉及到问题:
 历史工资数据中的员工信息与最新的员工信息之间存在差异,
 需要对历史数据到进行匹配后,才能进行导入
*/

--建立测试环境
Declare @A Table(
 ID Int,
 Name varchar(10)
)

Declare @B Table(
 ID int,
 Name varchar(10)
)

insert into @a
Select 1, '张三' union
Select 2, '李四' Union
Select 3, '王二'

Insert Into @b
Select 1, '王二'   union
Select 2, '李四'   union
Select 3, '张三'

--根据姓名来匹配
Select * from @a a join @b b on a.name = b.Name
where a.ID <> b.ID

/*
ID Name ID Name
1 张三 3 张三
3 王二 1 王二
*/

--根据编号来匹配
Select * from @a a join @b b on a.ID = b.ID
where a.Name <> b.Name
/*
ID Name ID Name
1 张三 1 王二
3 王二 3 张三
*/

发布了11 篇原创文章 · 获赞 0 · 访问量 5万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章