志在指尖
用双手敲打未来

update sql(update sql语句详解)

updatesql

在SQL数据库操作时需要将一张表中的数据Update到另一张表中去,可是用我以往的写法确怎么也不能成功.代码如下:
updatetable1a
seta.Col1=b.Col2
fromtable2b
wherea.c=b.c
上面的写法似乎是在Oracle的环境下可以实现的,(具体没有验证过)反正在SQLServer中是无法执行.上网找了一下终于找到了解决方法,如下:
Oralce和DB2都支持的语法:
UPDATEASET(A1,A2,A3)=(SELECTB1,B2,B3FROMBWHEREA.ID=B.ID)
MSSQLServer不支持这样的语法,相对应的写法为:
UPDATEASETA1=B1,A2=B2,A3=B3FROMALEFTJOINBONA.ID=B.ID
个人感觉MSSQLServer的Update语法功能更为强大。MSSQLSERVER的写法:
UPDATEASETA1=B1,A2=B2,A3=B3FROMA,BWHEREA.ID=B.ID
在Oracle和DB2中的写法就比较麻烦了,如下:
UPDATEASET(A1,A2,A3)=(SELECTB1,B2,B3FROMBWHEREA.ID=B.ID)WHEREIDIN(SELECTB.IDFROMBWHEREA.ID=B.ID)sql,

updatesql语句详解

UPDATE句子用于更新表中的记载。
SQLUPDATE句子
UPDATE句子用于更新表中已存在的记载。
SQLUPDATE语法
UPDATEtable_name
SETcolumn1=value1,column2=value2,…
WHEREsome_column=some_value;
请注意SQLUPDATE句子中的WHERE子句!WHERE子句规定哪条记载或许哪些记载需求更新。如果您省略了WHERE子句,一切的记载都将被更新!
演示数据库
咱们将运用RUNOOB样本数据库。
下面是选自”Websites”表的数据:
+—-+————–+—————————+——-+———+|id|name|url|alexa|country|+—-+————–+—————————+——-+———+|1|Google|https://www.google.cm/|1|USA||2|淘宝|https://www.taobao.com/|13|CN||3|菜鸟教程|http://www.runoob.com/|4689|CN||4|微博||20|CN||5|Facebook|https://www.facebook.com/|3|USA|+—-+————–+—————————+——-+———+SQLUPDATE实例
假设咱们要把”菜鸟教程”的alexa排名更新为5000,country改为USA。update sql
咱们运用下面的SQL句子:
实例
UPDATEWebsitesSETalexa=’5000′,country=’USA’WHEREname=’菜鸟教程’;
执行以上SQL,再读取”Websites”表,数据如下所示:
Update正告!
在更新记载时要分外当心!在上面的实例中,如果咱们省略了WHERE子句,如下所示:
UPDATEWebsites
SETalexa=’5000′,country=’USA’
执行以上代码会将Websites表中一切数据的alexa改为5000,country改为USA。
执行没有WHERE子句的UPDATE要慎重,再慎重。

未经允许不得转载:IT技术网站 » update sql(update sql语句详解)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载