SQL Server时间转换

第一种:format

--转化成年月日
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’)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值