摘要: 事务是作为单个工作单元而执行的一系列操作,如查询和修改数据,甚至可能是修改数据定义。定义事务边界的方式有显式和隐式两种。显式事务的定义需要以BEGIN TRAN 语句作为开始。如果想提交事务,则应该以COMMIT TRAN 语句显式结束事务;如果不想提交事务(撤消事务中的修改),则应该以ROLLBA... 阅读全文
posted @ 2014-06-09 00:50 守护之翼 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 除了修改数据以外,一般不会希望修改语句后再做其他事情。也就是说,一般不会希望修改语句能够返回任何输出。然而,在有些场合下,能够从修改过的行中返回数据,这个功能可能也有一定的用处。例如,考虑UPDATE语句,除了修改数据以外,对于发生更新的列,UPDATE 语句还可以返回这个列更新之前和更新之后的值。... 阅读全文
posted @ 2014-06-05 23:29 守护之翼 阅读(2149) 评论(0) 推荐(0) 编辑
摘要: SQL Server 2008 引入了一个称为MERGE 的语句,它能在一条语句中根据逻辑条件对数据进行不同的修改操作(INSERT、UPDATE和DELETE)。MERGE语句是SQL 标准的一部分,而T-SQL版本的MERGE语句也增加了一些非标准的扩展。因为MERGE语句是新增的,所以必须使用... 阅读全文
posted @ 2014-05-28 23:34 守护之翼 阅读(118) 评论(0) 推荐(0) 编辑
摘要: T-SQL支持标准的UPDATE 语句,用于更新表中的数据。T-SQL 也支持UPDATE 语句的一种非标准用法,在UPDATE 语句中使用联接和变量1.UPDATE 语句UPDATE 语句是标准的SQL 语句,用于对表中数据 行的一个子集进行更新。为了标识作为更新目标的子集行,须要在WHERE 子... 阅读全文
posted @ 2014-05-27 23:46 守护之翼 阅读(192) 评论(0) 推荐(0) 编辑
摘要: T-SQL 提供了两个从表中删除数据行的语句:DELETE 和 TRUNCATE 。1.DELETE 语句DELETE 语句是标准的SQL 语句,它用于根据指定的谓词从表中删除数据。这个标准的语句只有两个子句:用于指定目标表名的FROM子句和用于指定谓词条件的WHERE 子句。只有能让谓词条件计算结... 阅读全文
posted @ 2014-05-27 00:12 守护之翼 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 1.INSERT VALUES 语句INSERT VALUES 语句可以将基于指定值的行插入表。INSERT INTO dbo.Orders(orderid,orderdate) VALUES(10001,'20090212');SQL Server 2008增强了VALUES 语句的功能,允许在一... 阅读全文
posted @ 2014-05-26 00:47 守护之翼 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 逆透视转换(unpivoting)是一种把数据从列的状态旋转为行的状态的技术。通常,它涉及查询数据的透视状态,将来自单个记录中多个列的值扩展为单个列中具有相同值的多个记录。换句话说,把透视表中的每个源行潜在地转换成多个行,每行代表源透视表的一个指定的列值。使用标准SQL 进行逆透视转换逆透视转换的标... 阅读全文
posted @ 2014-05-19 00:09 守护之翼 阅读(1308) 评论(0) 推荐(0) 编辑
摘要: 透视数据(pivoting)是一种把数据从行的状态旋转为列的状态的处理,在这个过程中可能需要对值进行聚合。每个透视转换将涉及三个逻辑处理阶段,每个阶段都有相关的元素:分组阶段处理相关的分组或行元素,扩展(spreading)阶段处理相关的扩展或列元素,聚合阶段处理相关的聚合元素和聚合函数。总之,透视... 阅读全文
posted @ 2014-05-18 23:29 守护之翼 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 在集合论中,集合A与B的差集(A-B)是由属于集合A,但不属于集合B的元素组成的集合。可以认为两个集合的差A-B就是从A中减去B中也属于A的元素。在T-SQL中,集合之差是用EXCEPT集合运算实现的。EXCEPT运算对两个输入查询的结果集进行操作,返回出现在第一个结果集中,但不出现在第二个结果集中... 阅读全文
posted @ 2014-05-17 23:14 守护之翼 阅读(3600) 评论(2) 推荐(0) 编辑
摘要: 在集合论中,两个集合(记为集合A和B)的交集是由既属于A,也属于B的所有元素组成的集合。在T-SQL 中,INTERSECT 集合运算对两个输入查询的结果集取其交集,只返回在两个查询结果集中都出现的行。INTERSECT DISTINCT集合运算INTERSECT 集合运算在逻辑上首先删除两个输入多... 阅读全文
posted @ 2014-05-16 00:07 守护之翼 阅读(1869) 评论(0) 推荐(0) 编辑