SQL UPDATE 语句用于更新数据库表中的现有记录。它允许您修改表中的单个或多个列的值。
语法
UPDATE 语句的语法如下:
sql
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
其中:
* table_name 是要更新的表名。
* column1 , column2 , ... 是要更新的列名。
* value1 , value2 , ... 是要更新的新值。
* condition 是用于过滤要更新的记录的条件。
示例
以下示例将名为 employees 表中的 salary 列更新为所有收入超过 50,000 美元的员工增加 10%:
sql
UPDATE employees
SET salary = salary * 1.10
WHERE salary > 50000;
以下示例将名为 products 表中 name 列更新为所有 category_id 为 2 的产品的名称添加前缀 "New":
sql
UPDATE products
SET name = 'New ' || name
WHERE category_id = 2;
更新多个表
SQL UPDATE 语句还可以用于更新多个表,使用 JOIN 语句将它们连接起来。例如,以下语句将更新名为 orders 表中的 total 列,使之等于 order_details 表中所有与订单相关的行价格的总和:
sql
UPDATE orders o
SET total = (
SELECT SUM(od.price * od.quantity)
FROM order_details od
WHERE od.order_id = o.order_id
);
注意事项
* 使用 UPDATE 语句时务必小心,因为它会永久更改数据库中的数据。
* 在执行 UPDATE 语句之前,请务必备份您的数据。
* 使用 WHERE 子句来过滤要更新的记录,以避免意外更新。
* 如果不指定 WHERE 子句,则 UPDATE 语句将更新表中的所有记录。