我定义了一个表,如下所示:
CREATE TABLE employees
(employee_id INT(6),
email VARCHAR(25) NOT NULL);
另一个定义如下:
CREATE TABLE personne (
nopers NUMERIC(6) PRIMARY KEY,
courriel VARCHAR(40));
我想根据对应的“employee_id = nopers”,用表“employees”中对应的“email”填充表“personne”中的列“courriel”,并将“@ technissimo.fr“添加到所有电子邮件中。
我试过这个,但似乎不起作用:
UPDATE personne
SET courriel = CONCAT(employees.email, '@technissimo.fr')
WHERE employees.email =
(SELECT email FROM personne JOIN employees ON employee_id = nopers);
有人能给我提供关于这个问题的答案吗?
1条答案
按热度按时间r1wp621o1#
WHERE
和SET
子句后面的email
列应属于personne
表,这些问题将产生错误。查询可以按照如下语法重新排列,不需要子查询,但仍保留现有的匹配条件
ON employee_id = nopers
:Demo