把你知道的Update语句写下来,大多数人只能写一个至两个。
而实际在编写程序的时候,通过BAIDU也能写出来,本文分表分字段总结了常用的Update语句,代码亲测可用,大家放心COPY使用。
建表Stud_A,字段为:A_ID,A_NAME,A_SEX

表Stud_A
单表单字段
update Stud_A
set A_NAME = 'mike' where A_ID = '1';
单表多字段
update Stud_A
set A_NAME = 'mike', A_SEX = '1' where A_ID = '2';
多表单字段
新建表Stud_B,字段为:B_ID,B_NAME,B_SEX

表Stud_B
update Stud_A
set A_NAME = (select B_NAME from Stud_B where A_ID = B_ID)
where exists(select 1 from Stud_B where A_ID = B_ID);
注意:多表update的时候,记得要加exists()条件,否则不满足条件的记录被update称NULL;
列如上述SQL语句中,Stud_A表存在,但Stud_B表不存在的数据,对应的字段会被updat成NULL;
多表多字段
update Stud_A
set (A_NAME, A_SEX) = (select B_NAME, B_SEX from Stud_B t1 where A_ID = B_ID)
where exists(select 1 from Stud_B where A_ID = B_ID);
以上根据表及字段数量详细分类了update语句的应用场景,欢迎大家收藏参考。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
您必须登录才能参与评论!
立即登录



sqlite 如何更新数据的同时返回影响行主键ID列表呢
用sql实现不了,这个是查询操作和更新操作,要写代码实现
oracle语法和SqlServer还是有区别的
是的,不同厂商的确实不一样
update Stud_A a,Stud_B b set a.A_NAME = b.B_NAMEwhere a.A_ID = b.B_ID
SQL UPDATE使用总结很好
好
收藏了,感谢分享