SQL UPDATE语句在DB2、Oralce、SQL Server中的不同

数据库 SQL Server
UPDATE语句相信大家都经常用,下文对几个常用数据库系统中SQL UPDATE语句的用法进行了整理和比较,供您参考学习之用。

SQL UPDATE语句用于更新数据库中的数据,SQL UPDATE语句在不同的数据库写法都不太一样,本文将为您分别举例说明DB2、Oralce、SQL Server三种数据库中SQL UPDATE语句的使用异同,供您参考,希望对您有所帮助。

Oralce和DB2都支持的语法:

UPDATE A
 SET (A1, A2, A3) = (SELECT B1, B2, B3 FROM B WHERE A.ID = B.ID)

MS SQL Server不支持这样的语法,相对应的写法为:

UPDATE A
    SET A1 = B1, A2 = B2, A3 = B3
    FROM A LEFT JOIN B ON A.ID = B.ID

个人感觉MS SQL Server的Update语法功能更为强大。MS SQL SERVER的写法:

UPDATE A
    SET A1 = B1, A2 = B2, A3 = B3
    FROM A, B WHERE A.ID = B.ID

在Oracle和DB2中的写法就比较麻烦了,如下:

UPDATE A
    SET (A1, A2, A3) = (SELECT B1, B2, B3 FROM B WHERE A.ID = B.ID)
    WHERE ID IN (SELECT B.ID FROM B WHERE A.ID = B.ID)
 

 

 

【编辑推荐】

使用SQL Delete命令删除记录

SQL Server创建表和删除表

SQL SERVER TOC分页的实现方法

sql server系统表说明

SQL Server创建分区函数的方法

责任编辑:段燃 来源: 互联网
相关推荐

2010-09-06 15:13:05

DB2

2010-11-04 15:39:40

DB2 SQL语句

2011-08-17 20:48:25

索引建立语句非聚集索引唯一索引

2010-09-01 11:46:01

DB2临时表SQL

2011-08-17 21:49:55

建立视图SQL ServerOracle

2011-08-17 21:23:41

约束NOT NULLUNIQUE

2010-02-03 09:16:01

DB2

2010-08-27 14:54:21

DB2批处理脚本

2010-11-11 11:13:54

SQL Server

2010-11-02 11:49:18

SQL SERVER连

2010-08-26 09:56:57

DB2SQL SERVER互连

2010-11-04 11:39:47

2010-09-30 16:00:40

DB2动态SQL

2010-08-31 16:59:12

DB2UPDATE

2010-11-02 11:43:11

DB2动态SQL

2010-04-09 12:20:11

Oracle SQL

2010-09-01 10:08:54

DB2SQL语句

2011-05-17 09:40:18

SQL Server IBM DB2

2010-11-04 13:14:16

DB2执行SQL语句

2010-08-12 10:43:36

DB2 SQL移植
点赞
收藏

51CTO技术栈公众号