sql更新语句中update set from用法实现

执行一般的sql更新语句为update table_name set column_name=value where column_name1=value1;但是我们有时候需要将某个表用的字段根据两个表中相关字段更新为另一个表中某个字段的数据,即a表中主键aid在b表中有个外键bid相关,b表中字段b需要根据a、b表对应id更新为a表中字段c的数据,如果根据以上的sql一条一条的更新会非常浪费时间,所以我们需要用到update set from的语句用法。

在数据库中有一张表为student,如下所示:

如果以真实的情况来看的话,在一张学生表里,那么有些人的年龄是录入错误的,那么我们需要修改这些错误,在数据量非常大的情况下,这些数据修改起来是很费时间的,所以我们可以用一张excel表核对好所有学生信息,然后导入数据库,成为一张临时的表,如何用excel导入数据库请参见:https://mp.csdn.net/postedit/79943833。

以下为我们导入的临时表:

其中student_id为生成的guid,那么我们现在需要根据名字在更新他们的年龄,执行以下sql语句:

update student set age=tm.age from temporary tm where student.name=tm.name

执行成功后,就可以看到我们的student表已经更新成功了:

注:更新、删除等语句在执行后都不可以撤销,返回。所以在操作的时候已经要小心谨慎,如果担心操作失误,可以先备份数据库,或新建两张一样的表,先执行一次,成功后再到正式的表中执行。

1. 本站所有资源来源于用户分享和网络转载,如有侵权请联系站长删除!
2. 分享目的仅供大家学习参考,源码类您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!

917资源网 » sql更新语句中update set from用法实现

发表评论

提供最优质的资源集合

立即查看 了解详情