【问题标题】:MySQL UPDATE value in SQLfiddleSQLfiddle 中的 MySQL UPDATE 值
【发布时间】:2014-10-24 14:11:00
【问题描述】:

我刚刚开始使用 SQL,到目前为止我已经完成了它并且它可以工作

CREATE TABLE employees(employee_ID int NOT NULL, name varchar(20) NOT NULL UNIQUE, 
                   PRIMARY KEY (employee_ID)
                  );
INSERT INTO employees VALUES(1, 'Adam Jones');
INSERT INTO employees VALUES(2, 'Amy Smith');
INSERT INTO employees VALUES(3, 'Anthony Wright');

CREATE TABLE department(department_ID varchar(20) NOT NULL, 
                    department_name varchar(20) NOT NULL, head_of_dep varchar(20), 
                    num_of_employees_in_dep int
                   );
INSERT INTO department VALUES('Bad At SQL Ltd', 'Need Help HQ', 'No One Yet', 3);

但我不明白为什么这不起作用

UPDATE department SET head_of_dep = name FROM employees WHERE employee_ID = 1

我做错了什么?

使用 SQLfiddle 和 MySQL 5.5.32

【问题讨论】:

    标签: mysql sql sqlfiddle


    【解决方案1】:

    你需要改写成

    UPDATE department SET head_of_dep = (SELECT name FROM employees WHERE employee_ID = 1)
    

    因为你实际上必须SELECT这个值

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多