第九章系统函数与进阶资料查询.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

第九章

系統函數與進階資料查詢

1

Chapter9Outline9-1:決定性與非決定性函數9-2:常用的數學函數9-3:常用的時間函數9-4:常用的字串函數9-5:集總函數9-6:使用視覺方式設計查詢 9-7:本章總結2

9-1決定性與非決定性函數決定性(Deterministic)函數:針對一組特定的輸入值,如果函數一直傳回相同的結果,則函數具完全決定性;反之,如果函數傳回的值並不能確定,則為非決定性(Non-deterministic)函數。例如:對於字串函數中的LEFT(‘ABCDE’,2)而言,每次執行都一定會傳回‘AB’=決定性函數取得當天日期的函數GETDATE(),因不保證每次都會傳回相同的日期=非決定性函數非決定決定性函數在SQLServer中可能會限制其可使用之處非決定性函數也會被效能最佳化所忽略,因為系統為了嚴格確保正確性,因此會略過某些計劃重新調整順序的步驟3

9-2常用的數學函數數學函數中除了RAND(亂數)之外,其餘的數學函數都是具決定性的函數。ABS函數:傳回一數值的絕對值ABS(numeric_expression)numeric_expression:為一數字運算式,可以為數字,可以是欄位,也可以為運算式,例如:3*3-8。CEILING函數:傳回一大於或等於一數字運算式的最小整數CEILING(numeric_expression)selectceiling(123.45),ceiling(-123.45),ceiling(0.0)124,-123,04

9-2常用的數學函數FLOOR函數:傳回一小於或等於一數字運算式的最大整數FLOOR(numeric_expression)selectfloor(123.45),floor(-123.45),floor(123)PI函數:傳回圓周率PI的數值PI()selectpi()123,-124,1233.141592653589795

9-3常用的時間函數DAY函數:傳回宣告日期的日數DAY(date)date為一datetime或smalldatetime型態的運算式selectday(03/12/2007)=12MONTH函數:傳回宣告日期的月份MONTH(date)YEAR函數:傳回宣告日期的年份YEAR(date)selectyear(03/12/2007)=20078

9-3常用的時間函數GETDATE函數與GETUTCDATE:傳回系統目前的日期與時間/傳回國際標準時間或格林威治標準時間的日期與時間9

9-3常用的時間函數DATENAME函數:傳回代表指定日期的指定日期部分之字元字串,例如 :年份、月份、星期、…等。DATENAME(datepart,date)datepart:傳入各種引數,如yy,qq,mm,dy,dd,wk…等date:為一datetime或smalldatetime型態的運算式selectdatename(weekday,2007/03/19),

datename(dayofyear,2007/03/19)星期一,7810

9-3常用的時間函數DATEADD函數:根據在指定日期中加上某種間隔來傳回新的datetime值DATEADD(datepart,number,date)number:這是用來增加datepart的值,如果指定不是整數的值,則會直接捨棄小數點後數字部份;如果指定為負值,則就對datepart的值做減少的動作。selectdateadd(day,30,2007/03/1220:23:05),dateadd(hour,30,2007/03/1220:23:05),dateadd(day,-30,2007/03/1220:23:05)2007-04-1220:23:05,2007-03-1402:23:05,

2007-02-1020:23:0511

9-3常用的時間函數DATEDIFF函數:根據指定的基礎來傳回startdate與enddate之間的差距DATEDIFF(datepart,startdate,enddate)startdate,enddate:為一datetime或smalldatetime型態的運算式請問’2007/03/1220:23:05’與’2007/03/1408:00:00’相差幾天?相差幾分鐘?select

datediff(day,2007/03/1220:23:05,2007/03/1408:00:00),datediff(mi,2007/03/12

文档评论(0)

知识的力量 + 关注
实名认证
文档贡献者

每天进步一点点,生活向上没一天

1亿VIP精品文档

相关文档