2727551894

导航

 

【数据库】 SQL SERVER 2012 实用新特性 官方链接

 一. ALWAYS ON - 灾难恢复

 二. 列存储索引 - 比非聚集索引效率高,但有索引表不允许修改数据(插入,更新,删除),用于读写分离的分布式会有很大的性能提高

 三. Sequence (序列)

  1. 数据库级别, 在同一数据库各表中公用

  2. 顾名思义用于创建序列用的,注意与自增列不同,序列可以有重复值,序列可能是不连续的(异常情况)

  3. 语法 :

 CREATE SEQUENCE SeqId AS int -- 创建
 START WITH 5   -- 初始值(必须介于最小值和最大值之间)
 INCREMENT BY 1 -- 增长量(可以为负数)
 MINVALUE 1     -- 最小值
 MAXVALUE 10    -- 最大值
 CYCLE          -- 循环,超过最大值后,重新从最小值(增长量为负数时为最大值)开始
 CACHE 10       -- 缓存

 SELECT NEXT VALUE FOR SeqId -- 获取下一个序列值

 SELECT current_value FROM sys.sequences WHERE name = 'SeqId' -- 获取当前的序列值
 
 ALTER SEQUENCE SeqId RESTART WITH 9  INCREMENT BY -1 -- 修改序列

 DROP SEQUENCE SeqId -- 删除序列

四. OFFSET , FETCH (新的分页)
  1. 性能更高的分页方式

  2. 语法:

SELECT * FROM Test
ORDER BY id ASC 
OFFSET @pageIndex * @pageSize ROWS -- 索引
FETCH NEXT @pageSize ROWS ONLY     -- 取得数量(从索引后一位开始)

五. EOMONTH (返回指定月份的最后一天)

SELECT EOMONTH('2014-12-1')
SELECT EOMONTH('2014-12-1',-2)

六. CHOOSE (从值列表中选出指定位置的值)

SELECT CHOOSE ( 3, '1', '2', '3', '4' )  -- 从1开始不是0

七. IIF (三元运算符)

SELECT IIF (1 > 0,'true','false')

八. FORMAT (格式化)

SELECT FORMAT ( '2014-11-12 10:1:1', 'd', 'zh-cn' )

九. CONCAT (链接多个字符串,忽略 NULL)

SELECT CONCAT ('1',2,NULL,'a')

 

  

 

posted on 2014-12-10 15:55  xmj112288  阅读(250)  评论(0编辑  收藏  举报