日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

sqlserver 获取时间年月日时分秒

發布時間:2023/12/13 综合教程 32 生活家
生活随笔 收集整理的這篇文章主要介紹了 sqlserver 获取时间年月日时分秒 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉自:http://blog.itpub.net/14766526/viewspace-1156100/

select GETDATE() as '當前日期',
DateName(year,GetDate()) as '年',
DateName(month,GetDate()) as '月',
DateName(day,GetDate()) as '日',
DateName(dw,GetDate()) as '星期',
DateName(week,GetDate()) as '周數',
DateName(hour,GetDate()) as '時',
DateName(minute,GetDate()) as '分',
DateName(second,GetDate()) as '秒'

結果:

2009-08-13 23:07:15.403 2009 08 13 星期四 33 23 7 15

2007-11-13
sql server2000 時間操作
1.顯示本月第一天
SELECT DATEADD(mm,DATEDIFF(mm,0,getdate()),0)
select convert(datetime,convert(varchar(8),getdate(),120)+'01',120)

2.顯示本月最后一天
select dateadd(day,-1,convert(datetime,convert(varchar(8),dateadd(month,1,getdate()),120)+'01',120))
SELECT dateadd(ms,-3,DATEADD(mm,DATEDIFF(m,0,getdate())+1,0))

3.上個月的最后一天
SELECT dateadd(ms,-3,DATEADD(mm,DATEDIFF(mm,0,getdate()),0))

4.本月的第一個星期一
select DATEADD(wk,DATEDIFF(wk,0, dateadd(dd,6-datepart(day,getdate()),getdate())),0)

5.本年的第一天
SELECT DATEADD(yy,DATEDIFF(yy,0,getdate()),0)

6.本年的最后一天
SELECT dateadd(ms,-3,DATEADD(yy,DATEDIFF(yy,0,getdate())+1,0))

7.去年的最后一天
SELECT dateadd(ms,-3,DATEADD(yy,DATEDIFF(yy,0,getdate()),0))

8.本季度的第一天
SELECT DATEADD(qq,DATEDIFF(qq,0,getdate()),0)

9.本周的星期一
SELECT DATEADD(wk,DATEDIFF(wk,0,getdate()),0)

10.查詢本月的記錄
select * from tableName where DATEPART(mm, theDate) = DATEPART(mm, GETDATE()) and DATEPART(yy, theDate) = DATEPART(yy, GETDATE())

11.查詢本周的記錄
select * from tableName where DATEPART(wk, theDate) = DATEPART(wk, GETDATE()) and DATEPART(yy, theDate) = DATEPART(yy, GETDATE())

12.查詢本季的記錄
select * from tableName where DATEPART(qq, theDate) = DATEPART(qq, GETDATE()) and DATEPART(yy, theDate) = DATEPART(yy, GETDATE())
其中:GETDATE()是獲得系統時間的函數。

13.獲取當月總天數:
select DATEDIFF(dd,getdate(),DATEADD(mm, 1, getdate()))

select datediff(day,
dateadd(mm, datediff(mm,'',getdate()), ''),
dateadd(mm, datediff(mm,'',getdate()), '1900-02-01'))

14.獲取當前為星期幾
DATENAME(weekday, getdate())

15. 當前系統日期、時間
select getdate()

16. dateadd 在向指定日期加上一段時間的基礎上,返回新的 datetime 值
例如:向日期加上2天
select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.000

17. datediff 返回跨兩個指定日期的日期和時間邊界數。
select datediff(day,'2004-09-01','2004-09-18') --返回:17

18. datepart 返回代表指定日期的指定日期部分的整數。
SELECT DATEPART(month, '2004-10-15') --返回 10
年為year,月為month,日為day,小時hour,分為minute,秒為second

19. datename 返回代表指定日期的指定日期部分的字符串
SELECT datename(weekday, '2004-10-15') --返回:星期五

17. day(), month(),year() --可以與datepart對照一下
select 當前日期=convert(varchar(10),getdate(),120),當前時間=convert(varchar(8),getdate(),114)
select datename(dw,'2004-10-15')
select 本年第多少周=datename(week,'2004-10-15'),今天是周幾=datename(weekday,'2004-10-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指定部分所對應的字符串名稱

參數 interval的設定值如下:
值 縮 寫(Sql Server) 說明
Year Yy 年 1753 ~ 9999
Quarter Qq 季 1 ~ 4
Month Mm 月1 ~ 12
Day of year Dy 一年的日數,一年中的第幾日 1-366
Day Dd 日,1-31
Weekday Dw 一周的日數,一周中的第幾日 1-7
Week Wk 周,一年中的第幾周 0 ~ 51
Hour Hh 時0 ~ 23
Minute Mi 分鐘0 ~ 59
Second Ss 秒 0 ~ 59
Millisecond Ms 毫秒 0 ~ 999

舉例:
1.GetDate() 用于sql server :select GetDate()

2.DateDiff('s','2005-07-20','2005-7-25 22:56:32')返回值為 514592 秒
DateDiff('d','2005-07-20','2005-7-25 22:56:32')返回值為 5 天

3.DatePart('w','2005-7-25 22:56:32')返回值為 2 即星期一(周日為1,周六為7)
DatePart('d','2005-7-25 22:56:32')返回值為 25即25號
DatePart('y','2005-7-25 22:56:32')返回值為 206即這一年中第206天
DatePart('yyyy','2005-7-25 22:56:32')返回值為 2005即2005年

應用示例:

查詢某個日期之間的記錄數據:
select * from 表 where 開始時間>'2005-02-01' and 結束時間<='2005-06-05'order by id desc

查詢最近30內的記錄數據:
select * from 表 where datediff(Dd,last_date,getdate())<=30 order by id desc

查詢最近一周內的點擊率大于100的記錄數據:
select * from t_business_product where hit_count>100 and datediff(Dw,last_date,getdate())<=7 order by id desc

查詢某一年(如2006年)的記錄數據:
select * from 表 where DatePart(Yy,last_date)=2006 order by id desc

select * from 表 where DatePart(Year,last_date)=2006 order by id desc

如查詢系統當前年份插入的一年內的數據:
select * from 表 where DatePart(Yy,getdate())=DatePart(Yy,getdate()) order by id desc

取系統日期 并將 日期 分開
select 當前日期=convert(varchar(10),dateadd(day,-1,getdate()),120),當前時間=convert(varchar(8),getdate(),114)
---------------------取 年月日
year(),month(),date()

總結

以上是生活随笔為你收集整理的sqlserver 获取时间年月日时分秒的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。