ToB企服应用市场:ToB评测及商务社交产业平台
标题:
sql之update语句
[打印本页]
作者:
张春
时间:
2025-1-8 05:51
标题:
sql之update语句
SQL(Structured Query Language)是一种用于管理和操纵关系数据库的强大语言。UPDATE语句是SQL中用于修改数据库中已存在记载的一种方法。以下是一些经典的UPDATE语句案例:
1.更新特定行的列值
:
UPDATE employees
SET salary = salary * 1.1
WHERE employee_id = 123;
复制代码
这个语句将employees表中employee_id为123的员工的salary增加10%。
2.基于条件更新多行
:
UPDATE employees
SET salary = salary * 1.05
WHERE department_id = 5;
复制代码
这个语句将employees表中department_id为5的所有员工的salary增加5%。
3.利用子查询更新
:
UPDATE employees
SET salary = (SELECT AVG(salary) FROM employees WHERE department_id = 5)
WHERE department_id = 5;
复制代码
这个语句将department_id为5的所有员工的salary更新为同一部门平均工资。
4.更新多个列
:
UPDATE employees
SET first_name = 'John', last_name = 'Doe'
WHERE employee_id = 123;
复制代码
这个语句将employees表中employee_id为123的员工的first_name和last_name更新为'John'和'Doe'。
5.利用JOIN更新相干表
:
UPDATE orders
SET orders.status = 'Shipped'
FROM orders
JOIN order_details ON orders.order_id = order_details.order_id
WHERE order_details.product_id = 456;
复制代码
这个语句将order_details表中product_id为456的所有订单的status更新为'Shipped'。
6.利用LIMIT限定更新行数
(在某些数据库体系中支持):
UPDATE employees
SET salary = salary * 1.05
WHERE department_id = 5
LIMIT 10;
复制代码
这个语句将employees表中department_id为5的前10个员工的salary增加5%。
6.利用CASE语句进行条件更新
:
UPDATE employees
SET salary = CASE
WHEN department_id = 1 THEN salary * 1.1
WHEN department_id = 2 THEN salary * 1.05
ELSE salary
END
WHERE department_id IN (1, 2);
复制代码
这个语句根据department_id的不同,对employees表中的员工salary进行不同比例的增加。
在利用UPDATE语句时,务必谨慎,因为一旦实行,就会直接修改数据库中的数据。在实行更新操纵前,最好先利用SELECT语句查抄将要更新的数据,确保更新条件正确无误。此外,对于紧张的数据更新操纵,发起先在测试环境中实行,确认无误后再在生产环境中实行。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4