sql 表A、表B字段相同,判断2个表中id、age都相同时,将B表的其他字段数据更新到A表中

sql表A、表B字段相同,判断2个表中id、age都相同时,将B表的其他字段数据更新到A表中。当id、age中有一个数值不同,将这条信息插入到A表中例:表A表Bidnam... sql 表A、表B字段相同,判断2个表中id、age都相同时,将B表的其他字段数据更新到A表中。
当id、age中有一个数值不同,将这条信息插入到A表中
例:
表A 表B
id name age number id name age number
1 张三 20 123456 1 张三 20 654321
2 李思 19 234567 2 李想 20 234467
3 李思思 19 562389
4 李思 21 123456
执行后
id name age number
1 张三 20 654321
2 李思 19 234567
2 李想 20 234467
3 李思思 19 562389
4 李思 21 123456

如何写sql语句
展开
 我来答
百度网友4e9ddce37
2019-06-14 · TA获得超过102个赞
知道答主
回答量:103
采纳率:64%
帮助的人:22万
展开全部
UPDATE A SET A.phone = B.phone
FROM TestA A
JOIN TestB B
ON A.ID = B.ID and A.age =B.age
INSERT INTO TestA(ID,age,name,phone)
Select B.ID,B.age,B.name,B.phone
FROM TestB B
LEFT JOIN TestA A ON B.ID=A.ID AND B.age=A.age
Where A.phone is null
/*
使用LEFT JOIN 将B表中的所有资料取出
因为 ON 使用的是 ID与age必须全部相等,
所以用Where A.phone is null 将其中有任何一项不等的取出,过滤掉全等的项
*/
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式