SQL Server 日期和时间函数Word下载.docx
- 文档编号:19234231
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:6
- 大小:16.88KB
SQL Server 日期和时间函数Word下载.docx
《SQL Server 日期和时间函数Word下载.docx》由会员分享,可在线阅读,更多相关《SQL Server 日期和时间函数Word下载.docx(6页珍藏版)》请在冰豆网上搜索。
)--返回1
(5)DAY(date)
返回一个整数,表示指定日期的天datepart部分。
SELECTday(GetDate())–返回8
(6)GETDATE()
以datetime值的SQLServer2005标准内部格式返回当前系统日期和时间。
SELECTGetDate()
--返回2006-11-0813:
56.233
(7)MONTH(date)
返回表示指定日期的“月”部分的整数。
SELECTMONTH(GETDATE())--返回11
(8)YEAR(date)
返回表示指定日期的“年”部分的整数。
SELECTYEAR(GETDATE())--返回2006
2、取特定日期
(1)获得当前日期是星期几
SELECTDateName(weekday,Getdate())--Wednesday
(2)计算哪一天是本周的星期一
SELECTDATEADD(week,DATEDIFF(week,'
1900-01-01'
getdate()),'
)
--返回2006-11-0600:
00:
00.000
或
SELECTDATEADD(week,DATEDIFF(week,0,getdate()),0)
(3)当前季度的第一天
SELECTDATEADD(quarter,DATEDIFF(quarter,0,getdate()),0)—返回2006-10-0100:
00.000
(4)如何取得某个月的天数
SELECTDay(dateadd(ms,-3,DATEADD(mm,DATEDIFF(m,0,'
2006-02-03'
)+1,0)))
—返回28
(5)一个季度多少天
declare@mtinyint,@timesmalldatetime
select@m=month(getdate())
select@m=casewhen@mbetween1and3then1
when@mbetween4and6then4
when@mbetween7
and9then7
else10end
select@time=datename(year,getdate())+'
-'
+convert(varchar(10),@m)+'
-01'
selectdatediff(day,@time,dateadd(mm,3,@time))—返回92
(6)获得年月日(yyyy-MM-dd)
SELECTCONVERT(VARCHAR(10),GETDATE(),120)–返回2006-11-08
3、其它
(1)--下面的示例将日期指定为数字。
数据库引擎将0解释为1900年1月1日。
SELECTMONTH(0),DAY(0),YEAR(0)–返回1
1
1900
--下面两句是等效的
SELECTDATENAME(WEEKDAY,0)
SELECTDATENAME(WEEKDAY,'
(2)SETDATEFIRST{number|@number_var}
将一周的第一天设置为从1到7的一个数字。
SETDATEFIRST1--表示一周的第一天是“星期一"
SELECTDATENAME(WEEKDAY,GETDATE())--Wednesday
SELECTDATEPART(weekday,GETDATE())--返回3
--查看当前设置情况
select@@DATEFIRST
(3)SETDATEFORMAT{format|@format_var}
设置用于输入datetime或smalldatetime数据的日期部分(月/日/年)的顺序。
...有效参数包括mdy、dmy、ymd、ydm、myd和dym。
...该设置仅用在将字符串转换为日期值时的解释中。
它不影响日期值的显示。
...SETDATEFORMAT的设置是在执行或运行时设置,而不是在分析时设置。
...SETDATEFORMAT将覆盖SETLANGUAGE的隐式日期格式设置。
下面是例子:
--Setdateformattoyear,day,month.
SETDATEFORMATydm;
GO
DECLARE@datevarDATETIME;
SET@datevar='
1998/31/12'
;
SELECT@datevarASDateVar;
--Setdateformattoyear,month,day.
SETDATEFORMATymd;
1998/12/31'
返回表示指定日期的指定日期部分的字符串
DateName(datepart,date)其中datepart可以是year,month,weekday
SELECTDATENAME(year,getdate())AS'
YearName'
--------返回:
2013
SELECTDATENAME(month,getdate())AS'
MonthName'
--------返回:
05
SELECTDATENAME(weekday,getdate())AS'
WeekdayName'
------返回:
星期三
3.DATEADD(datepart,number,date),向指定日期加上一段时间,返回新的datetime值。
selectDateAdd(MM,2,'
2008-8-8'
)--------------返回:
2008-10-0800:
selectDateAdd(dd,2,'
2008-08-1000:
selectdateadd(hh,-1,getdate())--------------返回:
2012-07-0215:
26:
25.240,返回前一个小时的时间
4.DATEDIFF(date-part,date-expression-1,date-expression-2)
返回两个日期之间的时间间隔
此函数计算两个指定日期之间的差值,结果为日期部分中等于(date2-date1)的有符号的整数值
SELECTdatediff(hour,'
4:
00AM'
'
5:
50AM'
)---------------------------返回:
1
SELECTdatediff(month,'
1987/05/02'
1995/11/15'
)------------------返回:
102
SELECTdatediff(day,'
00'
23:
59'
)------------------------------返回:
SELECTdatediff(day,
'
1999/07/1900:
1999/07/2323:
)------返回:
4
1999/07/19'
1999/07/23'
)------------------返回:
1999/08/23'
1
date-part
参数可以是下列的值:
datepart
缩写
年
yy,yyyy
季度
qq,q
月
mm,m
年中的日
dy,y
日
dd,d
周
wk,ww
星期
dw,w
小时
hh
分钟
mi,n
秒
ss,s
毫秒
ms
微妙
mcs
纳秒
ns
例如查询当天更新的数据
select*fromNewswheredatediff(dd,add_time,getdate())=0
5
DATEPART(datepart,date)返回代表指定日期的指定日期部分的整数。
--今天是2009-2-24星期二
SELECTDATEPART(year,getdate())as'
Year'
2009
SELECTDATEPART(month,getdate())as'
Month'
---------返回:
2
SELECTDATEPART(weekday,getdate())as'
Weekday'
---------返回:
3,如:
Sunday=1、Saturday=7
SELECTDAY(getdate())
-----------------------返回:
24
备注:
DAY、MONTH、和YEAR函数分别是DATEPART(dd,date)、DATEPART(mm,date)、和DATEPART(yy,date)的同义词。
datapart日期部分
日期部分
Year
quarter
Month
dayofyear
Day
Week
Hour
minute
second
millisecond
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL Server 日期和时间函数 日期 时间 函数
![提示](https://static.bdocx.com/images/bang_tan.gif)