mysql如何把一个表的字段赋值到另一张表?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql如何把一个表的字段赋值到另一张表?相关的知识,希望对你有一定的参考价值。

我是一只菜鸟,想在数据库实现以下功能:
A表是USER表,userid、username
B表是SCORE表,scoreid、userid、username、score
当B表新增一条record时,根据userid的值,自动把A表的username写到B表的username
请问是通过触发器呢,还是通过外键?
两种方式是怎样实现的,请用实例告知,感谢!

参考技术A A表只有两个字段。 B表有4个字段,但包含A表的全部字段。B表的 username字段为冗余,应删除。
利用 B、A两表建立一个”形似你的B表“的视图,建立B表和A表的关联,......

(其实是用 inner join)
SELECT Btable.*, Atable.username;
FROM ;
btable ;
INNER JOIN atable ;
ON Btable.userid = Atable.userid本回答被提问者采纳

sql怎么将一张表的字段赋值给另一张表

有表TbUser,字段UserID;
表TbYTZ,字段UserID;
怎么把上面表的userid的值赋给下面表的userid

插入数据insert into TbYTZ(UserID) select UserID from TbUser更新数据则在TbUser和TbYTZ两个表要有一个关系。如TbUser.a1=TbYTZ.a2UPDATE TbYTZ SET TbYTZ.UserID = (SELECT UserID FROM TbUser WHERE TbUser.a1=TbYTZ.a2)

    结构化查询语言(英文简称:SQL)是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

参考技术A TbYTZ 有没有数据 和 TbUser 关联的字段, 是要insert 还是要 update

如果是 Insert ,插入数据
那么 insert into TbYTZ(userid) select userid from tbuser where ...

如果 是更新 ,需要关联字段。
参考技术B 你是要直接插入到TbYTZ表? insert into TbYTZ(userid) select userid from TbUser 参考技术C UPDATE `TbYTZ` SET `TbYTZ`.`UserID` = (SELECT `UserID` FROM `TbUser` WHERE XXXXXX)

XXXXXX是条件

参考技术D

更新还是插入数据?

插入数据

insert into TbYTZ(UserID) select UserID from TbUser

更新数据则在TbUser和TbYTZ两个表要有一个关系。。。

如TbUser.a1=TbYTZ.a2

UPDATE TbYTZ SET TbYTZ.UserID = (SELECT UserID FROM TbUser WHERE TbUser.a1=TbYTZ.a2)

本回答被提问者和网友采纳
第5个回答  2018-01-24 update TbUser set a.UserID=b.UserID from TbUser a,TbYTZ b where a.id=b.id(id是两个表的关联字段)

以上是关于mysql如何把一个表的字段赋值到另一张表?的主要内容,如果未能解决你的问题,请参考以下文章

在SQL中统计一个字段 然后再更新到另一张表的一个字段

在oracle中怎么把一张表的数据插入到另一张表中

sql怎么将一张表的字段赋值给另一张表

ORACLE数据库 存储过程 中 从几张级联表中查询 出结果集,循环添加到另一张表的某一字段

db2如何实现用一张表的某个字段更新另一张表的相应字段。

如何将数据从一张表导入到另一张表 - SpringBoot JPA /MySQL