业务需求是将A表中的某些字段数据,更新到B表中的相应含义的字段中。
假设user、score表的字段如下:
user表
userId | username | password | sex | addr | phone |
---|---|---|---|---|---|
1 | 张珊 | 123 | 男 | 北京市 | 1562356586 |
2 | 李思 | 456 | 女 | 北京市 | 1562354256 |
3 | 王武 | 789 | 男 | 北京市 | 1562345544 |
4 | 王柳 | 113 | 男 | 北京市 | 1562445778 |
score表
scoreId | userId | username | score | course | phone |
---|---|---|---|---|---|
1 | 1 | 80 | 语文 | ||
2 | 1 | 85 | 数学 | ||
3 | 3 | 52 | 语文 | ||
4 | 2 | 67 | 数学 |
现在score表中的username和phone字段是空的,需要从user表中,查找出相应的值插入score表中,SQL语句如下:
update score s,user u
set s.username=u.username,s.phone=u.phone
where s.userId=u.userId
或
update score s join user u on s.userId=u.userId
set s.username=u.username,s.phone=u.phone
当然这只是个例子,思想是一样的。
参考链接:https://www.jb51.net/article/150323.htm
参考链接2:https://www.cnblogs.com/zhangOfwust/p/10782254.html