SQL?Server時間轉(zhuǎn)換3種方法總結(jié)
更新時間:2024年09月19日 09:04:19 作者:程序人生?°
SQL?Server中處理日期和時間的常用方法有三種:FORMAT、CONVERT和DATEADD,這篇文章主要介紹了SQL?Server時間轉(zhuǎn)換的3種方法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
第一種:format
--轉(zhuǎn)化成年月日 select format( GETDATE(),'yyyy-MM-dd') --轉(zhuǎn)化年月日,時分秒,這里的HH指24小時的,hh是12小時的 select format( GETDATE(),'yyyy-MM-dd HH:mm:ss') --轉(zhuǎn)化成時分秒的,這里就不一樣的,需要反斜杠來轉(zhuǎn)化,所以要記一下 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)
參數(shù):
- date 參數(shù)是合法的日期表達式,類型可以是datetime、smalldatetime、char。
- number 是您希望添加的間隔數(shù),最好是整數(shù);對于未來的時間,此數(shù)是正數(shù),對于過去的時間,此數(shù)是負數(shù)。
- datepart 參數(shù)可以是下面表格的值。
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.實現(xiàn)秒加減 --減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.實現(xiàn)分鐘加減 --減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.實現(xiàn)小時加減 --減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.實現(xiàn)日加減 --減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.實現(xiàn)周加減 --減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.實現(xiàn)月份加減 --減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.實現(xiàn)季度加減 --減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.實現(xiàn)年份加減 --減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')
總結(jié)
到此這篇關(guān)于SQL Server時間轉(zhuǎn)換3種方法總結(jié)的文章就介紹到這了,更多相關(guān)SQL Server時間轉(zhuǎn)換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
批量更新數(shù)據(jù)庫所有表中字段的內(nèi)容,中木馬后的急救處理
這里對非ntext,nvarchar,image字段有效,這些字段要別外處理. 這下面的內(nèi)容,部分我是自己用過的.對于ntext等字段大于8000的我沒有試過.一起寫在這里2009-09-09SQL按照日、周、月、年統(tǒng)計數(shù)據(jù)的方法分享
這篇文章主要為大家按日,星期,月,季度,年統(tǒng)計銷售額的sql語句,需要的朋友可以參考下2013-10-10淺談tempdb在SqlServer系統(tǒng)中的重要作用
tempdb是SQLServer的系統(tǒng)數(shù)據(jù)庫一直都是SQLServer的重要組成部分,用來存儲臨時對象。tempdb中的任何數(shù)據(jù)在系統(tǒng)重新啟動之后都不會持久存在。因為實際上每次SQLServer啟動的時候都會重新創(chuàng)建tempdb。這個特性就說明tempdb不需要恢復。2014-08-08SQL?Server使用T-SQL進階之公用表表達式(CTE)
這篇文章介紹了SQL?Server中T-SQL的公用表表達式(CTE),文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-05-05數(shù)據(jù)庫SQL中having和where的用法區(qū)別
這篇文章主要介紹了數(shù)據(jù)庫SQL中having和where的用法區(qū)別的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-11-11