当前位置:  数据库>sqlserver

update实现多表更新

    来源: 互联网  发布时间:2014-08-29

    本文导语:      在开发中,数据库来回换,而有些关键性的语法又各不相同,这是一件让开发人员很头痛的事情.本文总结了Update语句更新多表时在SQL Server,Oracle,MySQL三种数据库中的用法.我也试了SQLite数据库,都没成功,不知是不支持多表更新还...

    在开发中,数据库来回换,而有些关键性的语法又各不相同,这是一件让开发人员很头痛的事情.本文总结了Update语句更新多表时在SQL Server,Oracle,MySQL三种数据库中的用法.我也试了SQLite数据库,都没成功,不知是不支持多表更新还是咋的. 在本例中: 我们要用表gdqlpj中的gqdltks,bztks字段数据去更新landleveldata中的同字段名的数据,条件是当landleveldata 中的GEO_Code字段值与gdqlpj中的lxqdm字段值相等时进行更新.

SQL Server语法:UPDATE { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } SET { column_name = { expression | DEFAULT | NULL } | @variable = expression | @variable = column = expression } [ ,...n ] { { [ FROM { < table_source > } [ ,...n ] ] [ WHERE < search_condition > ] } | [ WHERE CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } [ OPTION ( < query_hint > [ ,...n ] ) ]
SQL Server示例: update a set a.gqdltks=b.gqdltks,a.bztks=b.bztks from landleveldata a,gdqlpj b where a.GEO_Code=b.lxqdm

Oracle语法: UPDATE updatedtable SET (col_name1[,col_name2...])= (SELECT col_name1,[,col_name2...] FROM srctable [WHERE where_definition])
Oracel 示例: update landleveldata a set (a.gqdltks, a.bztks)= (select b.gqdltks, b.bztks from gdqlpj b where a.GEO_Code=b.lxqdm)

MySQL语法: UPDATE table_references SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition]
MySQL 示例: update landleveldata a, gdqlpj b set a.gqdltks= b.gqdltks, a.bztks= b.bztks where a.GEO_Code=b.lxqdm

有A、B张表,其记录如下:
A表
c1       c2
--------------
1 a1
2 a2
3 a3
8 a8
B表
c1       c3
--------------
1 b1
2 b1
3 b3
10 b10
A.c1与B.c1相等,用一条sql语句,实现A.c2的值更新为B.c3
------------------------
 

代码如下:
UPDATE    A
SET A.c2 =B.c3
from A ,B
where A.c1=B.c1
UPDATE    A
SET A.c2 =B.c3
from A inner join B on A.c1=B.c1
 

注意:update后面是不能跟多表的,但跟在from子句后面


    
 
 

您可能感兴趣的文章:

  • 在unix环境下如何实现每天定时运行一个脚本,如update.pl?????
  • 执行一条sql语句update多条记录实现思路
  • ■■有关RH Linux的在线更新(OnLine Update)?Linux下有没有如Windows下的Windows Update一样的工具呀,可下载补丁和Update组件?
  • CyanogenMod自动更新程序 CM-Updater
  • 紧急求救!怎样用update更新指定的一行数据!
  • 快快快快快,用update更新一行数据!
  • sql多表级联更新update的用法举例
  • top子句限制update语句更新的数据量
  • 使用 TOP 子句限制UPDATE 语句更新的数据
  • SQL Server 触发器 表的特定字段更新时,触发Update触发器
  • sql server 触发器实例:特定字段更新时触发Update触发器
  • Mysql跨表更新 多表update sql语句总结
  • JSP中,数据更新(UPDATE)的奇怪问题!!!怪!!!!!!!!!!!1
  • mysql 一次更新(update)多条记录的思路
  • MySQL UPDATE更新语句精解第1/2页
  • mysql多表join时候update更新数据的方法
  • 带关联子查询Update语句更新数据的例子
  • 一条sql语句update更新多条记录教程详解
  • 如何在CentOS下升级系统? yum update命令 自己配置更新源
  • MySQL中SELECT+UPDATE处理并发更新问题解决方案分享
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.awt类container的类成员方法: update定义及介绍
  • sql update 触发器 可获得被update的行的信息
  • java命名空间javax.swing类cellrendererpane的类成员方法: update定义及介绍
  • update真的好难呀,能帮我解决吗?
  • java命名空间javax.swing类japplet的类成员方法: update定义及介绍
  • MySQL 替换某字段内部分内容的UPDATE语句
  • java命名空间javax.swing类jframe的类成员方法: update定义及介绍
  • 菜鸟问题!如何update?Java+SQL server
  • java命名空间javax.swing类jdialog的类成员方法: update定义及介绍
  • JChromium Updater
  • java命名空间java.security类messagedigest的类成员方法: update定义及介绍
  • PHP PDO数据库类update操作
  • java命名空间javax.accessibility接口accessibletablemodelchange的类成员方法: update定义及介绍
  • update语句影响的记录数的获取方法
  • java命名空间javax.swing类jwindow的类成员方法: update定义及介绍
  • easyui的tabs update正确用法分享
  • java命名空间javax.swing.event类tablemodelevent的类成员方法: update定义及介绍
  • Tab选项卡 Updated Simple CSS Tabs
  • java命名空间java.awt类splashscreen的类成员方法: update定义及介绍
  • 还是那个关于update的问题呀,还是解决不了呀?
  • java命名空间java.awt类canvas的类成员方法: update定义及介绍
  • 一条sql语句update更新多条记录教程详解 iis7站长之家


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3