SQL更新语句(UPDATE)
提示
- 基本用途:
UPDATE
语句用于编辑数据库表中的现有行,可以更改一个或多个列的值。 - 条件更新:通过结合
WHERE
子句,可以根据特定条件更新特定行,例如根据customer_id
或age
。 - 更新多个行和所有行:可以一次性更新多个行(通过指定条件)或整个表中的所有行(如果没有使用
WHERE
子句)。
SQL UPDATE
语句用于编辑数据库表中的现有行。
示例
UPDATE Customers
SET age = 21
WHERE customer_id = 1;
这里,SQL 命令将 age
列的值更改为 21,条件是 customer_id
等于 1。
UPDATE 语法
SQL UPDATE
语句的语法是:
UPDATE table_name
SET column1 = value1, column2 = value2, ...
[WHERE condition];
这里,
table_name
是要编辑的表的名称column1, column2, ...
是要编辑的列的名称value1, value2, ...
是要设置给相应列的值[...]
表示括号内的子句是可选的condition
是更改值的条件
更新行中的单个值
在 SQL 中,可以使用 UPDATE
命令和 WHERE
子句更新单个值。例如,
UPDATE Customers
SET first_name = 'Johnny'
WHERE customer_id = 1;
这里,SQL 命令将 first_name
列的值更改为 Johnny,条件是 customer_id
等于 1。
注意: 如果我们想插入新行而不是更新现有行,我们可以使用 SQL INSERT INTO 语句。
更新行中的多个 值
我们还可以一次更新单个行中的多个值。例如,
UPDATE Customers
SET first_name = 'Johnny', last_name = 'Depp'
WHERE customer_id = 1;
这里,SQL 命令将 first_name
列的值更改为 Johnny,last_name
更改为 Depp,条件是 customer_id
等于 1。
更新多个行
UPDATE
语句可以一次更新多个行。例如,
UPDATE Customers
SET country = 'NP'
WHERE age = 22;
这里,SQL 命令将 country
列的值更改为 NP,条件是 age
等于 22。如果有多个行的 age
等于 22,则所有匹配的行都会被编辑。
更新所有行
我们可以通过省略 WHERE
子句一次更新表中的所有行。例如,
UPDATE Customers
SET country = 'NP';
这里,SQL 命令将所有行的 country
列的值更改为 NP。
注意: 我们在使用 UPDATE
语句时应该小心谨慎。如果省略 WHERE
子句,所有的行都会被更改,而且这种更改是不可逆的。