微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MySQL:尝试将数据从另一张表填充到一列中

如何解决MySQL:尝试将数据从另一张表填充到一列中

|| 表A有几列,包括
FirstName
LastName
表B具有不同的列,包括
FirstName
LastName
EmployeeID
我在表A中添加
EmployeeID
。现在,我要使用名字和姓氏从表B \'6'中填充表A \'6'。(目前,没有人使用相同的名字-这张桌子的设计很奇怪) 我尝试了一些事情,但我一直回到
INSERT INTO TableA (EMPLOYEE_ID) A
SELECT B.EMPLOYEE_ID FROM TableB B
WHERE A.First_name = B.First_name
AND A.Last_name = B.Last_name
但是我一直收到语法错误-MysqL服务器版本,要求在A附近使用正确的语法。我认为,在处理
Insert
语句时,我不知道如何使用此语法,或者这是否是正确的方法。     

解决方法

        听起来您在TableA中已经有要更新的数据。在这种情况下,您需要使用“ 10”语句。这是一个例子:
UPDATE TableA A
SET EMPLOYEE_ID =
  (SELECT EMPLOYEE_ID
   FROM TableB B
   WHERE B.First_name = A.First_name
   AND B.Last_name = A.Last_name)
WHERE EXISTS
  (SELECT EMPLOYEE_ID
   FROM TableB B
   WHERE B.First_name = A.First_name
   AND B.Last_name = A.Last_name)
    ,        问题:名和姓是否保证唯一? 另外,这需要进行更新。
UPDATE TableA A
SET a.employee_id = (SELECT employee_id FROM TableB WHERE first_name = a.first_name AND last_name = a.last_name)
WHERE EXISTS (SELECT 1 FROM TableB WHERE first_name = a.first_name AND last_name = a.last_name)
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。