如何一次更新多个ID

Tan*_*nko 4 mysql sql

我刚刚开始学习如何使用SQL进行编码。我正在遵循Codeacedemy.com上的教程

这是我写的有趣的东西,一个简单的日期基准:

CREATE TABLE employees (id INTEGER, name TEXT, year INTEGER);
INSERT INTO employees (id, name, year) VALUES (1, 'Dave', 2010);
INSERT INTO employees (id, name, year) VALUES (2, 'Karen', 2001);
INSERT INTO employees (id, name, year) VALUES (3, 'Joe', 2009);
INSERT INTO employees (id, name, year) VALUES (4, 'Larry', 2013);
INSERT INTO employees (id, name, year) VALUES (5, 'Tammy', 2015);
INSERT INTO employees (id, name, year) VALUES (6, 'Samantha', 2005);
INSERT INTO employees (id, name, year) VALUES (7, 'Karen', 2010);
INSERT INTO employees (id, name, year) VALUES (8, 'Rick', 2011);

ALTER TABLE employees ADD COLUMN gender TEXT;

UPDATE employees
set gender = 'Male'
where id = 1;

SELECT * FROM employees;
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以使用其ID一次更新多行?例如,我可以使用ID 1、3、5、8,它们都将更新为“男性”。

谢谢!

Man*_*oor 7

这是使用where子句的:

 UPDATE employees SET gender = 'Male' WHERE id IN (1,2,3)
Run Code Online (Sandbox Code Playgroud)

如果要更新表中的所有行,则:

UPDATE employees SET gender = 'Male'  
Run Code Online (Sandbox Code Playgroud)


Pri*_*jee 5

您可以使用相同的东西,但是对于 ID,您可以在

像这样:

 ....
 where id in (1,2,3);
Run Code Online (Sandbox Code Playgroud)

您还可以在内部编写嵌套查询IN

有关如何编写的更多详细信息,IN请参阅此处