SQL Server时间转换

Java探索者 ° 2024-10-07 10:37:00 阅读 94

第一种:format

<code>--转化成年月日

select format( GETDATE(),'yyyy-MM-dd')

--转化年月日,时分秒,这里的HH指24小时的,hh是12小时的

select format( GETDATE(),'yyyy-MM-dd HH:mm:ss')

--转化成时分秒的,这里就不一样的,需要反斜杠来转化,所以要记一下

select format(GETDATE(),'HH\:mm\:ss')

第二种:CONVERT

SELECT CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM

SELECT CONVERT(varchar(100), GETDATE(), 1): 05/16/06

SELECT CONVERT(varchar(100), GETDATE(), 2): 06.05.16

SELECT CONVERT(varchar(100), GETDATE(), 3): 16/05/06

SELECT CONVERT(varchar(100), GETDATE(), 4): 16.05.06

SELECT CONVERT(varchar(100), GETDATE(), 5): 16-05-06

SELECT CONVERT(varchar(100), GETDATE(), 6): 16 05 06

SELECT CONVERT(varchar(100), GETDATE(), 7): 05 16, 06

SELECT CONVERT(varchar(100), GETDATE(), 8): 10:57:46

SELECT CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM

SELECT CONVERT(varchar(100), GETDATE(), 10): 05-16-06

SELECT CONVERT(varchar(100), GETDATE(), 11): 06/05/16

SELECT CONVERT(varchar(100), GETDATE(), 12): 060516

SELECT CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937

SELECT CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967

SELECT CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47

SELECT CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157

SELECT CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM

SELECT CONVERT(varchar(100), GETDATE(), 23): 2006-05-16

SELECT CONVERT(varchar(100), GETDATE(), 24): 10:57:47

SELECT CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250

SELECT CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AM

SELECT CONVERT(varchar(100), GETDATE(), 101): 05/16/2006

SELECT CONVERT(varchar(100), GETDATE(), 102): 2006.05.16

SELECT CONVERT(varchar(100), GETDATE(), 103): 16/05/2006

SELECT CONVERT(varchar(100), GETDATE(), 104): 16.05.2006

SELECT CONVERT(varchar(100), GETDATE(), 105): 16-05-2006

SELECT CONVERT(varchar(100), GETDATE(), 106): 16 05 2006

SELECT CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006

SELECT CONVERT(varchar(100), GETDATE(), 108): 10:57:49

SELECT CONVERT(varchar(100), GETDATE(), 109): 05 16 2006 10:57:49:437AM

SELECT CONVERT(varchar(100), GETDATE(), 110): 05-16-2006

SELECT CONVERT(varchar(100), GETDATE(), 111): 2006/05/16

SELECT CONVERT(varchar(100), GETDATE(), 112): 20060516

SELECT CONVERT(varchar(100), GETDATE(), 113): 16 05 2006 10:57:49:513

SELECT CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547

SELECT CONVERT(varchar(100), GETDATE(), 120): 2006-05-16 10:57:49

SELECT CONVERT(varchar(100), GETDATE(), 121): 2006

第三种:DATEADD()

语法:DATEADD(datepart,number,date)

参数:

date 参数是合法的日期表达式,类型可以是datetime、smalldatetime、char。number 是您希望添加的间隔数,最好是整数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。datepart 参数可以是下面表格的值。

datepart
年份(year) yy , yyyy , year
季度(quarter) qq , q , quarter
月份(month) mm , m , month
年中的日(day of year) dy, y
日(day) dd , d , day
周(week) wk , ww , week
星期(weekday) dw, w
小时(hour) hh , hour
分钟(minute) mi , n , minute
秒(second) ss , s , second
毫秒(millisecond ms
微秒(microsecond) mcs
纳秒(nanosecond) ns

具体用法如下:

1.实现秒加减

--减100秒

SELECT DATEADD(ss,-100,'2024-07-03')

SELECT DATEADD(s,-100,'2024-07-03')

SELECT DATEADD(second,-100,'2024-07-03')

--加100秒

SELECT DATEADD(ss,100,'2024-07-03')

SELECT DATEADD(s,100,'2024-07-03')

SELECT DATEADD(second,100,'2024-07-03')

2.实现分钟加减

--减1分钟

SELECT DATEADD(mi,-1,'2024-07-03')

SELECT DATEADD(n,-1,'2024-07-03')

SELECT DATEADD(minute,-1,'2024-07-03')

--加1分钟

SELECT DATEADD(mi,1,'2024-07-03')

SELECT DATEADD(n,1,'2024-07-03')

SELECT DATEADD(minute,1,'2024-07-03')

3.实现小时加减

--减1小时

SELECT DATEADD(hh,-1,'2024-07-03')

SELECT DATEADD(hour,-1,'2024-07-03')

--加1小时

SELECT DATEADD(hh,1,'2024-07-03')

SELECT DATEADD(hour,1,'2024-07-03')

4.实现日加减

--减1天

SELECT DATEADD(dd,-1,'2024-07-03')

SELECT DATEADD(d,-1,'2024-07-03')

SELECT DATEADD(day,-1,'2024-07-03')

--加1天

SELECT DATEADD(dd,1,'2024-07-03')

SELECT DATEADD(d,1,'2024-07-03')

SELECT DATEADD(day,1,'2024-07-03')

5.实现周加减

--减1周

SELECT DATEADD(ww,-1,'2024-07-03')

SELECT DATEADD(wk,-1,'2024-07-03')

SELECT DATEADD(week,-1,'2024-07-03')

--加1周

SELECT DATEADD(ww,1,'2024-07-03')

SELECT DATEADD(ww,1,'2024-07-03')

SELECT DATEADD(ww,1,'2024-07-03')

6.实现月份加减

--减1月

SELECT DATEADD(m,-1,'2024-07-03')

SELECT DATEADD(mm,-1,'2024-07-03')

SELECT DATEADD(month,-1,'2024-07-03')

--加1月

SELECT DATEADD(m,1,'2024-07-03')

SELECT DATEADD(mm,1,'2024-07-03')

SELECT DATEADD(month,1,'2024-07-03')

7.实现季度加减

--减1季度

SELECT DATEADD(q,-1,'2024-07-03')

SELECT DATEADD(qq,-1,'2024-07-03')

SELECT DATEADD(quarter,-1,'2024-07-03')

--加1季度

SELECT DATEADD(q,1,'2024-07-03')

SELECT DATEADD(qq,1,'2024-07-03')

SELECT DATEADD(quarter,1,'2024-07-03')

8.实现年份加减

--减1年

SELECT DATEADD(yy,-1,'2024-07-03')

SELECT DATEADD(yyyy,-1,'2024-07-03')

SELECT DATEADD(year,-1,'2024-07-03')

--加1年

SELECT DATEADD(yy,1,'2024-07-03')

SELECT DATEADD(yyyy,1,'2024-07-03')

SELECT DATEADD(year,1,'2024-07-03')



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。