- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
sql里的函数【DOC精选】
sql里的函数ISNULL函数isnull(要检查的表达式,如果为null时替换的值)
CAST函数cast(要转换的表达式 as 转换成的数据类型)看例子
Codeselect c.LastName,isnull( cast( ( select min(OrderDate) from Sales.SalesOrderHeader o where o.ContactID = c.ContactID ) as varchar),neverordered) as orderdatefrom Person.Contact c
再看一个例子:
Codeuse?AdventureWorksselect?the?order?num?is?+?Cast(SalesOrderID?as?varchar)?as?xlandfrom?Sales.SalesOrderHeaderwhere?CustomerID?=?5
?
CONVERT函数convert(数据类型,表达式[,格式])这个函数和cast类似,我们先看cast的一个例子
Codeuse?AdventureWorksselect?OrderDate,?Cast(OrderDate?as?varchar)?as?Converdfrom?Sales.SalesOrderHeaderwhere?CustomerID?=?5
再看convert的例子
Codeuse?AdventureWorksselect?OrderDate,?convert(varchar(12),?OrderDate,111)?as?Converdfrom?Sales.SalesOrderHeaderwhere?CustomerID?=?5
这里对日期的格式做了限制具体这么限制要查convert的微软帮助文件EXISTS函数先看例子返回数据是否存在的布尔变量
Codeuse?AdventureWorksselect?e.EmployeeID,FirstName,LastNamefrom?HumanResources.Employee?ejoin?Person.Contact?con?e.ContactID?=?c.ContactIDwhere?exists(????select?EmployeeID?from?HumanResources.JobCandidate?jc????where?jc.EmployeeID?=?e.EmployeeID)
这个例子也可以完成相同的功能
Codeuse?AdventureWorksselect?distinct?e.EmployeeID?,FirstName,LastNamefrom?HumanResources.Employee?ejoin?Person.Contact?c????on?e.ContactID?=?c.ContactIDjoin?HumanResources.JobCandidate?jc????on?jc.EmployeeID?=?e.EmployeeID
第一个例子比第二个例子在性能上要好很多第三个用exists的例子
Codeuse?mastergo?if?not?exists?(select?True?From?sys.databases?where?name?=?xland)begin???create?database?xlandend?elsebegin????print?xland?is?existend?go
?在这里将看到if else和begin end的用法FLOOR获取提供的值,把他取整到最近的整数上
Codedeclare?@myval?int;set?@myval?=?3.6;set?@myval?=?@myval?*?4.8;select?floor(@myval)+.9?as?mycoloumn
COALESCEcoalesce哪个不为空用哪个?
COALESCE(i.ProductID,d.ProductID)
?@@Datefirst系统认为星期几是一周的第几天,返回这个数字@@Error返回错误号,没有错误返回0@@cursor_rows返回游标中的行数@@fetch_status返回最后一个游标fetch操作状态的指示值0成功-1失败,超过了游标的尾-2失败,当前记录被删除,发生在滚动游标和动态游标上@@identity返回当前连接创建的最后一行记录的标志@@rowcoun
文档评论(0)