sql更新语句怎么写_update批量更新语句

(3) 2024-06-26 12:23

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
sql更新语句怎么写_update批量更新语句,希望能够帮助你!!!。

定义:UPDATE更新语句是用来修改表中一条数据或者多条数据记录

基本语法:

UPDATE <表名> SET <字段名=> WHERE <筛选条件>; 

1. 更新单行数据

实例1:在学生表中,将学生编号Sid为6的学生姓名Sname修改为:杨红梅

update students set Sname='杨红梅' where Sid = 6; 

执行结果:
sql更新语句怎么写_update批量更新语句_https://bianchenghao6.com/blog__第1张

  • SET后面除了带文本之外,还可以是数学表达式

实例2:在学生表中,将学生编号Sid为10的学生姓名对应的Tid加100

update students set Tid=Tid+100 where Sid=10; 

执行结果:
sql更新语句怎么写_update批量更新语句_https://bianchenghao6.com/blog__第2张

2. 更新多行数据

  • 让where 条件筛选更多的记录,就会同时更改多条数据记录了

实例3:在学生表中,将性别为 ‘女’ 的学生,学生编号加500

update students set Sid=Sid+500 where Ssex = '女'; 

执行结果:

sql更新语句怎么写_update批量更新语句_https://bianchenghao6.com/blog__第3张

3. UPDATE语句与子查询的搭配使用

  • 子查询的定义:子查询是查询语句里面嵌套的查询语句,子查询的结果将作为主查询的查询条件,来完成更加复杂的数据检索
  • 那UPDATE语句是如何与子查询来进行搭配使用的呢,本质上就是将子查询与where子句结合来使用

实例4:在学生表中,将查询出班主任为:高静的学生性别修改为:女生

解析:在学生表中只有教师编号Tid,并没有教师姓名Tname, 所以需要先在教师表中查询出高静的id

update students set Ssex = '女生' where Tid = (select Tid from teachers where Tname = '高静'); 

执行结果:
sql更新语句怎么写_update批量更新语句_https://bianchenghao6.com/blog__第4张

  • 如果子查询中返回的是多个数据时,就不能用等号了,需要用IN

实例5:在学生表中,将班主任为:魏平 、宋明 和 黄江的学生性别都修改为:男生

解析:子查询中返回多个Tid, 这时候就需要用到IN

# 第一步:先将子查询写出,查询出对应的id select Tid from teachers where Tname IN('魏平','宋明','黄江'); # 第二步:在将子查询加入到where条件中,使用update进行更新 update students set Ssex = '男生' where Tid IN ( select Tid from teachers where Tname IN('魏平','宋明','黄江')); 

执行结果:

sql更新语句怎么写_update批量更新语句_https://bianchenghao6.com/blog__第5张

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复