位置: 编程技术 - 正文

SQL Server2012在开发中的一些新特性(server2012打开sqlserver)

编辑:rootadmin

一、增加了Sequence对象。这个对于Oracle用户来说是最熟悉不过的数据库对象了,现在在SQL Server中终于也看到了类似的对象,只是在使用的语法上有一点点不一样。创建语法也是CREATE SEQUENCE,使用的时候需要使用NEXT VALUE FOR来取下一个值:

如果要插入一个值,那么就是:

但是好像没有提供获得当前值的语法,难道必须取下一个值?

二、新的分页查询语法。以前在SQL Server中分页,最早是用top或者临时表,后来出现了ROW_NUMBER函数实现分页,现在最新的SQL可以在order by子句后跟offset和fetch来分页,感觉有点像是LINQ的语法。比如查询1W行之后的条有效项目信息,那么ROW_NUMBER分页查询的SQL是:

显然使用了新的语法后代码看起来更简洁,意思表达也更明确。从执行效率上来讲,试了一下,是一样的。

三、一些新的系统函数。3.1相当于C#中三目运算符的IIF函数

这个函数和VBA中的IIF函数相同,判断第一个参数的表达式是否为真,真则返回第二个参数,假则返回第三个参数。

有了这个函数很多时候我们可以不用再使用复杂的case when语法了。比如我们判断项目的大小以显示对应的字符串,那么老的写法是:

现在,我们可以简单的写成:

3.2不用判断类型和NULL的字符串连接CONCAT函数

SQL Server本来对字符串的连接很简单,直接使用“+”号,但是需要注意两个问题,一是必须类型都是字符串类型,如果是数字类型那么会报语法错误,所以必须把数字类型转换为字符串。二是如果其中的某个值为null,那么整个连接的结果就是一个null字符串,所以还需要判断null,所以本来只是一个连接字符串的查询就会写的很复杂:

现在使用CONCAT函数,直接忽略其中的类型,忽略对NULL的检查,直接连接成一个非空的字符串:

可以明显感觉到简洁了很多。

3.3转换成字符串时设置格式的FORMAT函数。

以前要把数字或者日期转换成字符串,可以使用CONVERT函数并带人第三个整数类型的参数指定转换的格式,不过这种方法太麻烦,整数参数不容易理解和记忆,而且也不灵活。现在的FORMAT函数相当于C#中的String.Format函数,在第二个参数中可以想要输出的格式。

3.4让枚举显示更方便的CHOOSE函数。

在程序中经常使用枚举值,在数据库中使用tinyint来保存枚举值,但是在查看时却不是很容易理解枚举值的含义,必须查看代码看1对应什么,2对应什么才知道。在显示的时候如果要显示成字符串,那么就需要使用case when进行判断。现在可以使用CHOOSE函数,让枚举转换成字符串变得很简单。比如要显示项目的状态,那么我们的查询就是:

CHOSSE函数比case when有几个缺点,1是不支持0和负数,所以如果枚举的值是0那么就没办法显示,2是枚举值必须连续而且比较小,不能使用、等值,那要是用CHOOSE那得写死人了。没有default值,使用case when的时候,如果不匹配还有个else值可以显示,而使用CHOOSE后如果没有匹配的,那么就是NULL值。所以个人觉得这个函数的使用面非常

3.5各种日期时间函数。

除了一个EOMONTH函数是返回给定日期的最后一天外,其他的新函数,都是把年月日作为参数传进去,返回指定数据类型的对象,相当于就是CONVERT函数的变形。总体使用不多,在此不多介绍。

四、OVER子句的增强和新增一些分析函数。之前OVER子句是用于RANK,ROW_NUMBER等排名函数,现在OVER子句得到了大大的增强, 可以将OVER子句应用到聚合函数中,也增加了一些分析函数。

比如我有一个项目和客户表,一个客户对于多个项目,现在需要知道客户的信息和每个客户的最新项目Code,这个要是以前还不好实现,现在我们有了分析函数,可以使用FIRST_VALUE或者LAST_VALUE再配合OVER子句,得到我们想要的结果:

推荐整理分享SQL Server2012在开发中的一些新特性(server2012打开sqlserver),希望有所帮助,仅作参考,欢迎阅读内容。

SQL Server2012在开发中的一些新特性(server2012打开sqlserver)

文章相关热门搜索词:sql server2012操作步骤,sqlserver打开,sqlserver打开,sql server2016怎么打开,sql2012打开,sql server2012打开,sql server2012打开,sql server2012打开,内容如对您有帮助,希望把文章链接给更多的朋友!

sql where 1=1的优缺点分析 一、不用where1=1在多条件查询中的困扰举个例子,如果您做查询页面,并且,可查询的选项有多个,同时,还让用户自行选择并输入查询关键词,那么,

PL/SQL DEVELOPER 使用的一些技巧 1,登录后默认自动选中MyObjects默认情况下,PLSQLDeveloper登录后,Brower里会选择Allobjects,如果你登录的用户是dba,要展开tables目录,正常情况都需要Wait

sql lite 数据库之间表复制的方法 现在的思路:打开一个目的库,打开一个源库,因为目的库中的某些表内容和源库的表内容不一致,所以需要把源库中的某些表导入到目的库中,步骤

标签: server2012打开sqlserver

本文链接地址:https://www.jiuchutong.com/biancheng/347504.html 转载请保留说明!

上一篇:高效的SQLSERVER分页查询(推荐)(sql server怎么分离)

下一篇:sql where 1=1的优缺点分析(sql中where语句的写法)

  • 帮忙劳务派遣
  • 期末留抵增值税在哪个科目
  • 已出库未开票要交税吗
  • 一般纳税人留底税额抵减欠缴税额
  • 财务记账之后是否必须审核
  • 所得税季报利润表怎么填
  • 工会经费的减免申请
  • 股东出让个人股权流程
  • 以房屋抵顶的工程叫什么
  • 商业折扣的纳税影响
  • 报销差旅费需要交进项税吗
  • 仓库常用包材
  • 老板请员工吃饭唯独没叫你是什么意思
  • 包装物一次摊销的会计分录
  • 中途做账的企业如何建账
  • 消费税为什么不计入长投成本
  • 增值税专用发票几个点
  • 小规模季度划分
  • 办理税务登记与办理法人企业有何区别?
  • 公司之间借款收据要领导签字吗
  • 企业取得被投资单位的长期股权可以享有
  • 厂房出租开发票选择什么税收分类编码
  • 电子承兑如何转出换成现金
  • 收到专票有误,已跨月未认证,销售方不红冲咋办
  • 给法院交的诉讼费怎么交
  • 苹果电脑使用u盘之前需要设置什么?
  • 买点肥料
  • php基础入门教程
  • linux小技巧
  • php后端技术栈
  • 费用报销费用填写要求
  • 退货可以吗
  • vue设置宽度
  • 【Vue】踩坑日记:Scoped下动画无效,曾经以为百利而无一害的Scoped,也有自己的限制
  • Swagger-的使用(详细教程)
  • css常见的选择器有哪几种
  • 纳什理论是什么
  • 抄税前要做什么
  • 承租人对融资租赁的处理原则
  • 公司员工餐费会计分录
  • 一般纳税人只有销项没有进项
  • 帝国cms功能
  • mysql有几种基本数据类型
  • 六税一费和六税两费的区别
  • 跨省市提供建筑服务
  • 收入总额是什么意思
  • Mysql 创建索引锁表
  • 企业所得税汇算清缴时间
  • 减免城建税的会计分录
  • 社保应该如何缴纳
  • 免税出口是什么意思
  • 母子公司往来款属于借款吗
  • 小企业营业外收入包括
  • 进项已抵扣,退货发票怎么处理
  • 提取法定盈余公积金会计分录
  • 仓储领域
  • 注册工贸公司要多少资金
  • 生产型企业账务处理方法
  • 应付利息怎么记账
  • 专票三流合一
  • 如何判断应当预见
  • win10收不到短信验证码
  • 在Linux系统中安装虚拟window
  • 如何最简单的
  • 恢复已删除的聊天记录微信
  • win7休眠模式在哪
  • linux流量控制
  • JavaScript中的方法名不区分大小写
  • css优化提高性能的方法有哪些
  • jquery教程w3c
  • 如何使用jquery插件
  • nodejs worker
  • unity3d官方教程
  • js分段上传
  • 自制基质
  • jquery实例
  • 福建税务局网上办税
  • 郑州市区税务局
  • 最新专票税率几个档
  • 四川职工医保联网了吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设