孤独的猫

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

2012年11月11日

摘要: EXCEPT:用第一个集合与第二个集合比较,返回只存在于第一个集合,但不在第二个集合中的值。INTERSECT:比较两个集合,返回两个集合都有的行。我们新建一个表CREATE TABLE projectPerson( personId varchar(10), projectId varchar(10), PRIMARY KEY (personId,projectId))GOINSERT INTO projectPerson Values('joeb','projBlg')INSERT INTO projectPerson Values('joeb 阅读全文
posted @ 2012-11-11 13:38 孤独的猫 阅读(1865) 评论(0) 推荐(0)

摘要: 可以用SYNONYM建立别名,这样可以简化或封装代码,如:CREATE SYNONYM Emp for AdventureWorks.HumanResources.EmployeeSelect * from Empdrop SYNONYM Emp 阅读全文
posted @ 2012-11-11 13:05 孤独的猫 阅读(2445) 评论(0) 推荐(0)

摘要: 排序函数可以用来协助给结果集增加位置信息。SQL SERVER 2008只有四个排序函数,介绍如下:ROW_NUMBER:返回结果集中给定行的序号RANK:基于给定行集合的选择顺序,给出行的位置。如有一些值连在一起,位置间有空隙 如两个值在第一位,然后下一个值将在第三位DENSE_RANK:同RANK一样,但没有在顺序中留下空隙。RANK肯能位1,2,2,4,4,6,6;DENSE_RANK为:1,2,2,3,3,4,4-NTILE:DENSE_RANK用于将排名分为若干部分。如果一个表有100个值,可以使用NTITL(2)将前五十个数定为1,后五十个数定为2示例如下:CREATE VIEW 阅读全文
posted @ 2012-11-11 12:43 孤独的猫 阅读(1855) 评论(0) 推荐(0)

摘要: PIVOT函数用于转置数据,即用旋转表的方式把行换成列。PIVOT可以将表中的列换成行如下面的例子:CREATE TABLE Sales.SalesByMonth( year char(4), month char(3), amount MONEY, PRIMARY KEY(year,month))INSERT INTO Sales.SalesByMonth(year,month,amount)values('2007','Jan',789.0000), ('2007','Feb',389.0000), ('2007 阅读全文
posted @ 2012-11-11 12:24 孤独的猫 阅读(10440) 评论(0) 推荐(0)

摘要: create table testTop(value int primary key)--可以一次插入顶部的多条记录insert top(5) into testTop select * from (select 1 as value union select 2 union select 3 union select 4 union select 5 union select 6 union select 7) as sevenRowsgoselect * from testTopupdate top(2) testTop set value=value * 100 delete top(. 阅读全文
posted @ 2012-11-11 10:34 孤独的猫 阅读(351) 评论(0) 推荐(0)