sql之update语句

打印 上一主题 下一主题

主题 890|帖子 890|积分 2670

SQL(Structured Query Language)是一种用于管理和操纵关系数据库的强大语言。UPDATE语句是SQL中用于修改数据库中已存在记载的一种方法。以下是一些经典的UPDATE语句案例:
1.更新特定行的列值
  1. UPDATE employees
  2. SET salary = salary * 1.1
  3. WHERE employee_id = 123;
复制代码
这个语句将employees表中employee_id为123的员工的salary增加10%。
2.基于条件更新多行
  1. UPDATE employees
  2. SET salary = salary * 1.05
  3. WHERE department_id = 5;
复制代码
这个语句将employees表中department_id为5的所有员工的salary增加5%。
3.利用子查询更新
  1. UPDATE employees
  2. SET salary = (SELECT AVG(salary) FROM employees WHERE department_id = 5)
  3. WHERE department_id = 5;
复制代码
这个语句将department_id为5的所有员工的salary更新为同一部门平均工资。
4.更新多个列
  1. UPDATE employees
  2. SET first_name = 'John', last_name = 'Doe'
  3. WHERE employee_id = 123;
复制代码
这个语句将employees表中employee_id为123的员工的first_name和last_name更新为'John'和'Doe'。
5.利用JOIN更新相干表
  1. UPDATE orders
  2. SET orders.status = 'Shipped'
  3. FROM orders
  4. JOIN order_details ON orders.order_id = order_details.order_id
  5. WHERE order_details.product_id = 456;
复制代码
这个语句将order_details表中product_id为456的所有订单的status更新为'Shipped'。
6.利用LIMIT限定更新行数(在某些数据库体系中支持):
  1. UPDATE employees
  2. SET salary = salary * 1.05
  3. WHERE department_id = 5
  4. LIMIT 10;
复制代码
这个语句将employees表中department_id为5的前10个员工的salary增加5%。
6.利用CASE语句进行条件更新
  1. UPDATE employees
  2. SET salary = CASE
  3.     WHEN department_id = 1 THEN salary * 1.1
  4.     WHEN department_id = 2 THEN salary * 1.05
  5.     ELSE salary
  6. END
  7. WHERE department_id IN (1, 2);
复制代码
这个语句根据department_id的不同,对employees表中的员工salary进行不同比例的增加。
在利用UPDATE语句时,务必谨慎,因为一旦实行,就会直接修改数据库中的数据。在实行更新操纵前,最好先利用SELECT语句查抄将要更新的数据,确保更新条件正确无误。此外,对于紧张的数据更新操纵,发起先在测试环境中实行,确认无误后再在生产环境中实行。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

张春

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表