gpt4 book ai didi

mysql - 需要用同一数据库中另一个表的数据填充一个表

转载 作者:可可西里 更新时间:2023-11-01 07:23:37 26 4
gpt4 key购买 nike

我正在尝试使用 mysql 从另一个表填充一个表。第一张表是用户,第二张表是技术人员。

用户包含:userID、surname、firstname、loginid、password、accesslevel。

技术人员包含:techID、tech_surname、tech_firstname、tech_loginid、tech_password、tech_accesslevel。

当我添加用户时,如果 accesslevel=tech 并且 users.loginid 不等于 technicals.tech_loginid,我希望填充技术人员表。

我尝试了几种方法,结果要么没有添加任何记录,要么每次都添加 accesslevel=tech 的用户中的所有记录,给我几个重复的记录。

我试过这个:

INSERT INTO technicians (techID, tech_surname, tech_firstname, tech_loginid, tech_passwrd, tech_accesslevel)
SELECT firstname, surname, loginid, accesslevel, passwrd, tech_loginid
FROM users, technicians
WHERE accesslevel='tech' AND 'loginid!=tech_loginid'

它不起作用,如果我从 WHERE 子句中删除 AND 语句,它会在每次使用 accesslevel=tech 添加新用户时推送所有记录。

我做错了什么?我已经搜索了几个小时来寻找答案。

干杯

最佳答案

我认为您正在尝试插入那些已经不存在于该表中的技术人员,因此查询应该是这样的

INSERT INTO technicians  (techID, tech_surname, tech_firstname, tech_loginid, tech_passwrd, tech_accesslevel) 
SELECT loginid, surname, firstname, tech_loginid, passwrd, accesslevel
FROM users
LEFT OUTER JOIN technicians ON loginid = tech_loginid
WHERE accesslevel='tech' and tech_loginid IS null

关于mysql - 需要用同一数据库中另一个表的数据填充一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7396938/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com