Sql Server2005对t-sql的增强之通用表表达式CTE

2016-02-19 16:01 3 1 收藏

给自己一点时间接受自己,爱自己,趁着下午茶的时间来学习图老师推荐的Sql Server2005对t-sql的增强之通用表表达式CTE,过去的都会过去,迎接崭新的开始,释放更美好的自己。

【 tulaoshi.com - 编程语言 】

  CTE是Common Table Expression的简写,翻译成中文就是通用表表达式,它可以在select,insert或者update中使用。

  为了说明问题,我们先随便建张表,插入几条数据:

  if object_id('t','U') is not null --用object_id函数判断表是否在数据库中存在很简洁

drop table t;
GO
create table t(c1 int,c2 decimal,c3 int);
GO
INSERT INTO t
SELECT c1 = 1,c2 = 5.0,c3=10
UNION
SELECT c1 = 2,c2 = 5.5,c3=10
UNION
SELECT c1 = 3,c2 = 5.0,c3=20
UNION
SELECT c1 = 4,c2 = 5.5,c3=20

  --下面我们使用CTE写一个分页的sql语句

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

GO
WITH t_cn AS
(  
select c1,c2,c3,rn = ROW_NUMBER() OVER(ORDER BY c1 DESC) FROM t WHERE 0 = 0 --可以在此处添加一些条件
)
SELECT c1,c2,c3 FROM t_cn WHERE rn between 2 and 3
SELECT totalCn = COUNT(*) FROM t WHERE 0 = 0

  这就是一个最最简单的示例了,这样写出来的分页是不是很简洁?CTE还可以用在insert和update中用法大同小异,就不一一列举。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

来源:https://www.tulaoshi.com/n/20160219/1610903.html

延伸阅读
一、 SQLCLR权限集级别 当你使用CREATE ASSEMBLY语句把一个程序集加载到一个数据库中时,SQL Server提供了三种权限集级别:SAFE,EXTERNAL_ACCESS和UNSAFE。这些权限集形成如图3和图5(均请参考第二篇)所示的AppDomain策略级别。 下面是一个典型的语句,它实现安装位于FileLoader.dll文件内的一个程序集,并且赋予它EXTERNAL_AC...
首先需要说明的是这篇文章的内容并不是如何调节SQL Server查询性能的(有关这方面的内容能写一本书),而是如何在SQL Server查询性能的调节中利用SET STATISTICS IO和SET STATISTICS TIME这二条被经常忽略的Transact-SQL命令的。 从表面上看,查询性能的调节是一件十分简单的事。从本质上讲,我们希望查询的运行速度能够尽可能地快,...
标签: SQLServer
  一、在Analysis Services项目中定义数据源视图 1、根据模板创建Analysis Services项目 BIDS(Business Intelligence Development Studio)利用模板创建不同类型的项目,Analysis Services项目即为其中的一个模板,而且这些模板是可自定义的。 2、定义数据源 使用Native OLE DB\Microsoft OLE DB Provider for SQL Server...
问题 有了SQL Server管理套件你就可以做你在使用T-SQL命令时可以做的任何事情了。使用图形用户界面的一个问题是要记住所有你点击过的来再次重新执行这个动作是很困难的。另一个问题是你通过图形用户界面所做的大部分事情都立即执行了,这并不总是最好的。那么该怎样捕捉SQL Server正在做什么以便我之后可以重新执行这个动作或运行这...
标签: SQLServer
在我们的工作中,经常需要连续输入多个文件的数据到SQL Server的表中,有时需要从相同或者不同的目录中,同时将文件中的数据倒入。在这篇文章中,我们将讨论如何同时把一个目录中的文件的数据倒入到SQL Server中。      试验环境     我们先创建整个试验的环境。创建文件目录“C:\MyI...

经验教程

371

收藏

77
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部