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语句
最新回答
纯味野猫
2024-05-25 01:10:49
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 将其中有任何一项不等的取出,过滤掉全等的项 */