SQL_Server_日期和时间函数_第1页
SQL_Server_日期和时间函数_第2页
SQL_Server_日期和时间函数_第3页
SQL_Server_日期和时间函数_第4页
SQL_Server_日期和时间函数_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Sql Server 中的日期与时间函数1. 当前系统日期、时间select getdate(2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值例如:向日期加上 2天select dateadd(day,2,2004-10-15-返回:2004-10-1700:00:00.0003. datediff 返回跨两个指定日期的日期和时间边界数。select datediff(day,2004-09-01,2004-09-18-返回:174. datepart 返回代表指定日期的指定日期部分的整数。SELECT DATEPART(month,2004-10-15

2、-返回 105. datename 返回代表指定日期的指定日期部分的字符串SELECT datename(weekday,2004-10-15 -返回:星期五6. day(,month(,year(-可以与 datepart 对照一下select 当前日期 =convert(varchar(10,getdate(,120, 当前时间 =convert(varchar(8,getdate(,114select datename(dw,2004-10-15select 本年第多少周 =datename(week,2004-10-15, 今天是周几 =datename(weekday,2004-10

3、-15函数 参数 /功能GetDate( 返回系统目前的日期与时间DateDiff (interval,date1,date2以 interval 指定的方式, 返回 date2与 date1两个日期之间的差值 date2-date1 DateAdd(interval,number,date以 interval 指定的方式,加上 number 之后的日期DatePart (interval,date返回日期 date 中, interval 指定部分所对应的整数值DateName (interval,date返回日期 date 中, interval 指定部分所对应的字符串名称参数 inter

4、val 的设定值如下:值 缩 写(Sql Server (access和 asp 说明Year Yy yyyy 年 17539999Quarter QQ q 季 14Month Mm m 月 112Day of year Dy y 一年的日数 , 一年中的第几日 1-366Day Dd d 日, 1-31Weekday Dw w 一周的日数,一周中的第几日 1-7Week Wk ww 周,一年中的第几周 051Hour Hh h 时 023Minute Mi n 分钟 059Second Ss s 秒 059Millisecond Ms -毫秒 0999access 和 asp 中用 date

5、(和 now(取得系统日期时间;其中 DateDiff,DateAdd,DatePart 也同是能用于 Access 和 asp 中,这些函数的用法也类似举例:1.GetDate(用于 sql server :selectGetDate(2.DateDiff(s,2005-07-20,2005-7-2522:56:32返回值为 514592秒DateDiff(d,2005-07-20,2005-7-2522:56:32返回值为 5天3.DatePart(w,2005-7-2522:56:32返回值为 2即星期一 (周日为 1,周六为 7 DatePart(d,2005-7-2522:56:32

6、返回值为 25即 25号DatePart(y,2005-7-2522:56:32返回值为 206即这一年中第 206天DatePart(yyyy,2005-7-2522:56:32返回值为 2005即 2005年Sql Server 中的日期与时间函数:1. 当前系统日期、时间select getdate(2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值:例如:向日期加上 2天select dateadd(day,2,2004-10-15-返回:2004-10-1700:00:00.0003. datediff 返回跨两个指定日期的日期和时间边界数:sel

7、ect datediff(day,2004-09-01,2004-09-18-返回:174. datepart 返回代表指定日期的指定日期部分的整数:SELECT DATEPART(month,2004-10-15 -返回 105. datename 返回代表指定日期的指定日期部分的字符串:SELECT datename(weekday,2004-10-15 -返回:星期五6. day(,month(,year(-可以与 datepart 对照一下:select 当前日期 =convert(varchar(10,getdate(,120, 当前时间 =convert(varchar(8,get

8、date(,114select datename(dw,2004-10-15select 本年第多少周 =datename(week,2004-10-15, 今天是周几 =datename(weekday,2004-10-15函数 参数 /功能GetDate( 返回系统目前的日期与时间DateDiff (interval,date1,date2以 interval 指定的方式, 返回 date2与 date1两个日期之间的差 值 date2-date1DateAdd (interval,number,date以 interval 指定的方式,加上 number 之后的日期DatePart (i

9、nterval,date返回日期 date 中, interval 指定部分所对应的整数值DateName (interval,date返回日期 date 中, interval 指定部分所对应的字符串名称参数 interval 的设定值如下:值 缩 写(Sql Server (Access和 ASP 说明Year Yy yyyy 年 17539999Quarter Qq q 季 14Month Mm m 月 112Day of year Dy y 一年的日数 , 一年中的第几日 1-366Day Dd d 日, 1-31Weekday Dw w 一周的日数,一周中的第几日 1-7Week W

10、k ww 周,一年中的第几周 051Hour Hh h 时 023Minute Mi n 分钟 059Second Ss s 秒 059Millisecond Ms -毫秒 0999access 和 asp 中用 date(和 now(取得系统日期时间; 其中 DateDiff,DateAdd,DatePart 也同是能用于 Access 和 asp 中,这些函数的用法也类似。举例:1.GetDate(用于 sql server :selectGetDate(2.DateDiff(s,2005-07-20,2005-7-2522:56:32返回值为 514592秒DateDiff(d,2005

11、-07-20,2005-7-2522:56:32返回值为 5天3.DatePart(w,2005-7-2522:56:32返回值为 2即星期一 (周日为 1,周六为 7 DatePart(d,2005-7-2522:56:32返回值为 25即 25号DatePart(y,2005-7-2522:56:32返回值为 206即这一年中第 206天 DatePart(yyyy,2005-7-2522:56:32返回值为 2005即 2005年SQL Server 日期和时间函数1、常用日期方法 (下面的 GetDate(=2006-11-0813:37:56.233 (1DATENAME (date

12、part ,date 返回表示指定日期的指定日期部分的字符串。 Datepart 详见下面的列表 . SELECT DateName(day,Getdate( 返回 8(2DATEPART (datepart , date 返回表示指定日期的指定日期部分的整数。SELECT DATEPART(year,Getdate( 返回 2006(3DATEADD (datepart, number, date 返回给指定日期加上一个时间间隔后的新 datetime 值。SELECT DATEADD(week,1,GetDate(-当前日期加一周后的日期 (4DATEDIFF (datepart , st

13、artdate , enddate 返回跨两个指定日期的日期边界数和时间边界数。SELECT DATEDIFF(month,2006-10-11,2006-11-01-返回 1 (5DAY (date 返回一个整数,表示指定日期的天 datepart 部分。SELECT day(GetDate( 返回 8(6GETDATE (以 datetime 值的 SQL Server 2005标准内部格式返回当前系统日期和时间。 SELECT GetDate(-返回 2006-11-0813:37:56.233(7MONTH (date 返回表示指定日期的 “ 月 ” 部分的整数。SELECT MONT

14、H(GETDATE(-返回 11(8YEAR (date 返回表示指定日期的 “ 年 ” 部分的整数。SELECT YEAR(GETDATE(-返回 20062、取特定日期(1获得当前日期是星期几SELECT DateName(weekday,Getdate(-Wednesday(2计算哪一天是本周的星期一SELECT DATEADD(week,DATEDIFF(week,1900-01-01,getdate(,1900-01-01 -返回 2006-11-0600:00:00.000或SELECT DATEADD(week,DATEDIFF(week,0,getdate(,0(3当前季度的第

15、一天SELECT DATEADD(quarter,DATEDIFF(quarter,0,getdate(,0 返回 2006-10-01 00:00:00.000(4如何取得某个月的天数SELECT Day(dateadd(ms,-3,DATEADD(mm,DATEDIFF(m,0,2006-02-03+1,0 返回 28 (5一个季度多少天declare mtinyint,timesmalldatetimeselect m=month(getdate(select m=casewhen mbetween 1and 3then 1when mbetween 4and 6then 4when m

16、between 7and 9then 7else 10endselect time=datename(year,getdate(+-+convert(varchar(10,m+-01select datediff(day,time,dateadd(mm,3,time 返回 92(6获得年月日 (yyyy-MM-ddSELECT CONVERT(VARCHAR(10,GETDATE(,120 返回 2006-11-083、其它 (1-下面的示例将日期指定为数字。数据库引擎将 0 解释为 1900 年 1 月 1 日。 SELECT MONTH(0, DAY(0, YEAR(0 返回 1 -下面两

17、句是等效的 SELECT DATENAME(WEEKDAY,0 SELECT DATENAME(WEEKDAY,1900-01-01 1 1900 (2SET DATEFIRST number | number_var 将一周的第一天设置为从 1 到 7 的一个数字。 SET DATEFIRST 1 -表示一周的第一天是“星期一 SELECT DATENAME(WEEKDAY,GETDATE( -Wednesday SELECT DATEPART(weekday,GETDATE( -返回 3 -查看当前设置情况 select DATEFIRST (3SET DATEFORMAT format

18、| format_var 设置用于输入 datetime 或 smalldatetime 数据的日期部分(月/日/年)的顺序。 .有效参数包括 mdy、dmy、ymd、ydm、myd 和 dym。 .该设置仅用在将字符串转换为日期值时的解释中。它不影响日期值的显示。 .SET DATEFORMAT 的设置是在执行或运行时设置,而不是在分析时设置。 .SET DATEFORMAT 将覆盖 SET LANGUAGE 的隐式日期格式设置。 下面是例子: - Set date format to year, day, month. SET DATEFORMAT ydm; GO DECLARE datevar DATETIME; SET datevar = 1998/31/12; SELECT datevar AS DateVar; GO - Set date format to year, month, day. SET DATEFORMAT ymd; GO DECLARE datevar DATETIME; SET datevar = 1998/12/31;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论