SQL?SERVER數(shù)據(jù)庫中日期格式化詳解
1. date和datetime類型的區(qū)別
date是SQL Server 2008新引進(jìn)的數(shù)據(jù)類型。它表示一個日期,不包含時間部分,可以表示的日期范圍從公元元年1月1日到9999年12月31日。只需要3個字節(jié)的存儲空間。
dateTime 日期和時間部分,可以表示的日期范圍從公元1753年1月1日00:00:00.000 到9999年12月31日23:59:59.997 ,精確到3.33毫秒,它需要8個字節(jié)的存儲空間。
2. GETDATE()函數(shù),返回當(dāng)前日期時間(datetime類型)
SELECT GETDATE(); 返回 2023-03-27 09:36:30.207
3. CONVERT()函數(shù),格式化日期
CONVERT() 函數(shù)是把日期轉(zhuǎn)換為新數(shù)據(jù)類型的通用函數(shù),也可以用不同的格式顯示日期/時間數(shù)據(jù)。
語法:
CONVERT(data_type(length),date,style)
- data_type(length) 規(guī)定目標(biāo)數(shù)據(jù)類型(帶有可選的長度)。date指需要轉(zhuǎn)換的值。style 規(guī)定日期/時間的輸出格式。
- 可以使用的 style 值:當(dāng)前時間2023年3月27日 09:36:30.207
Style ID | SQL | 對應(yīng)格式 |
---|---|---|
1 | SELECT CONVERT(varchar(100), GETDATE(), 1); | 01/03/17 |
2 | SELECT CONVERT(varchar(100), GETDATE(), 2); | 17.01.03 |
3 | SELECT CONVERT(varchar(100), GETDATE(), 3); | 03/01/17 |
4 | SELECT CONVERT(varchar(100), GETDATE(), 4); | 03.01.17 |
5 | SELECT CONVERT(varchar(100), GETDATE(), 5); | 03-01-17 |
6 | SELECT CONVERT(varchar(100), GETDATE(), 6); | 03 01 17 |
7 | SELECT CONVERT(varchar(100), GETDATE(), 7); | 01 03, 17 |
8 | SELECT CONVERT(varchar(100), GETDATE(), 8); | 09:09:10 |
9 | SELECT CONVERT(varchar(100), GETDATE(), 9); | 01 3 2017 9:09:10:037AM |
10 | SELECT CONVERT(varchar(100), GETDATE(), 10); | 01-03-17 |
11 | SELECT CONVERT(varchar(100), GETDATE(), 11); | 17/01/03 |
12 | SELECT CONVERT(varchar(100), GETDATE(), 12); | 170103 |
13 | SELECT CONVERT(varchar(100), GETDATE(), 13); | 03 01 2017 09:09:10:037 |
14 | SELECT CONVERT(varchar(100), GETDATE(), 14); | 09:09:10:037 |
20 | SELECT CONVERT(varchar(100), GETDATE(), 20); | 2017-01-03 09:09:10 |
21 | SELECT CONVERT(varchar(100), GETDATE(), 21); | 2017-01-03 09:09:10.037 |
22 | SELECT CONVERT(varchar(100), GETDATE(), 22); | 01/03/17 9:09:10 AM |
23 | SELECT CONVERT(varchar(100), GETDATE(), 23); | 2017-01-03 |
24 | SELECT CONVERT(varchar(100), GETDATE(), 24); | 09:09:10 |
25 | SELECT CONVERT(varchar(100), GETDATE(), 25); | 2017-01-03 09:09:10.037 |
100 | SELECT CONVERT(varchar(100), GETDATE(), 100); | 01 3 2017 9:09AM |
101 | SELECT CONVERT(varchar(100), GETDATE(), 101); | 01/03/2017 |
102 | SELECT CONVERT(varchar(100), GETDATE(), 102); | 2017.01.03 |
103 | SELECT CONVERT(varchar(100), GETDATE(), 103); | 03/01/2017 |
104 | SELECT CONVERT(varchar(100), GETDATE(), 104); | 03.01.2017 |
105 | SELECT CONVERT(varchar(100), GETDATE(), 105); | 03-01-2017 |
106 | SELECT CONVERT(varchar(100), GETDATE(), 106); | 03 01 2017 |
107 | SELECT CONVERT(varchar(100), GETDATE(), 107); | 01 03, 2017 |
108 | SELECT CONVERT(varchar(100), GETDATE(), 108); | 09:09:10 |
109 | SELECT CONVERT(varchar(100), GETDATE(), 109); | 01 3 2017 9:09:10:037AM |
110 | SELECT CONVERT(varchar(100), GETDATE(), 110); | 01-03-2017 |
111 | SELECT CONVERT(varchar(100), GETDATE(), 111); | 2017/01/03 |
112 | SELECT CONVERT(varchar(100), GETDATE(), 112); | 20170103 |
113 | SELECT CONVERT(varchar(100), GETDATE(), 113); | 03 01 2017 09:09:10:037 |
114 | SELECT CONVERT(varchar(100), GETDATE(), 114); | 09:09:10:037 |
120 | SELECT CONVERT(varchar(100), GETDATE(), 120); | 2017-01-03 09:09:10 |
121 | SELECT CONVERT(varchar(100), GETDATE(), 121); | 2017-01-03 09:09:10.037 |
126 | SELECT CONVERT(varchar(100), GETDATE(), 126); | 2017-01-03T09:09:10.037 |
130 | SELECT CONVERT(varchar(100), GETDATE(), 130); | 5 ???? ?????? 1438 9:09:10:037AM |
131 | SELECT CONVERT(varchar(100), GETDATE(), 131); | 5/04/1438 9:09:10:037AM |
4. DATEPART() 函數(shù)
datepart()
函數(shù)是用來返回 指定日期時間的指定日期部分的整數(shù)。返回類型為:int
。
語法:例如獲取當(dāng)前時間的年份:
select DATEPART(yy,getdate()) -- 2023 select DATEPART(mm,getdate()) -- 3 select DATEPART(dd,getdate()) -- 27
日期部分 | 縮寫 | 說明 |
---|---|---|
year | yy,yyyy | 返還年份 |
quarter | qq,q | 返還季度 |
month | mm,m | 返還月份 |
day of year | dy ,y | 返還一年中的第幾天 |
day | dd,d | 返還日 |
week | wk,ww | 返還一年中的第幾周 |
weekday | dw | 返還星期幾 數(shù)據(jù)型 |
hour | hh | 返還小時 |
minute | mi,n | 返還分鐘 |
second | ss,s | 返還秒 |
millisecond | ms | 返還毫秒數(shù) |
總結(jié)
到此這篇關(guān)于SQL SERVER數(shù)據(jù)庫中日期格式化的文章就介紹到這了,更多相關(guān)SQLSERVER日期格式化內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Navicat連接SQL Server,報(bào)錯08001的解決方案
這篇文章主要講述了如何配置SQL Server和SQL Server Browser服務(wù),并通過修改TCP/IP屬性來設(shè)置端口號為1433,作者分享了自己的個人經(jīng)驗(yàn),并鼓勵大家參考和支持2025-01-01SQLServer中JSON文檔型數(shù)據(jù)的查詢問題解決
SQL Server 對于數(shù)據(jù)平臺的開發(fā)者來說越來越友好,下面這篇文章主要給大家介紹了關(guān)于SQLServer中JSON文檔型數(shù)據(jù)的查詢問題的解決方法,需要的朋友可以參考下2021-06-06SQLSERVER語句的執(zhí)行時間顯示的統(tǒng)計(jì)結(jié)果是什么意思
在SQL語句調(diào)優(yōu)的時候,大部分都會查看語句執(zhí)行時間,究竟SQLSERVER顯示出來的統(tǒng)計(jì)結(jié)果是什么意思,接下來為您一一解釋,感興趣的朋友可以了解下2013-01-01Sql Server臨時表和游標(biāo)的使用小結(jié)
這篇文章主要介紹了Sql Server臨時表和游標(biāo)的使用小結(jié),需要的朋友可以參考下2017-05-05SQL Server使用Windows身份驗(yàn)證與JDBC連接數(shù)據(jù)庫的操作流程
在企業(yè)級應(yīng)用中,數(shù)據(jù)庫的安全性是非常重要的,SQL Server 提供了多種身份驗(yàn)證方式,其中 Windows 身份驗(yàn)證是一種較為安全且方便的管理方式,本文將介紹如何在 Java 中使用 JDBC 連接 SQL Server 數(shù)據(jù)庫,并且通過 Windows 身份驗(yàn)證來確保數(shù)據(jù)訪問的安全性2024-12-12SQL Server中調(diào)用C#類中的方法實(shí)例(使用.NET程序集)
這篇文章主要介紹了SQL Server中調(diào)用C#類中的方法實(shí)例(使用.NET程序集),本文實(shí)現(xiàn)了在SQL Server中調(diào)用C#寫的類及方法,需要的朋友可以參考下2014-10-10SQL Server 2016 無域群集配置 AlwaysON 可用性組圖文教程
這篇文章主要介紹了SQL Server 2016 無域群集配置 AlwaysON 可用性組圖文教程,需要的朋友可以參考下2017-04-04