sql server使用convert來取得datetime日期資料

來源:互聯網
上載者:User

sql server使用convert來取得datetime日期資料,以下執行個體包含各種日期格式的轉換
語句及查詢結果:
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-05-16 10:57:49.700
Select
CONVERT(varchar(100), GETDATE(), 126): 2006-05-16T10:57:49.827
Select
CONVERT(varchar(100), GETDATE(), 130): 18 ???? ?????? 1427
10:57:49:907AM
Select CONVERT(varchar(100), GETDATE(), 131): 18/04/1427
10:57:49:920AM

說明:
使用 CONVERT:

CONVERT ( data_type [ ( length ) ] , expression [ , style ] )

參數
expression

是任何有效 Microsoft SQL Server 運算式。。

data_type

目標系統所提供的資料類型,包括 bigint 和 sql_variant。不能使用使用者定義的資料類型。
length

nchar、nvarchar、char、varchar、binary 或 varbinary 資料類型的選擇性參數。

style

日期格式樣式,藉以將 datetime 或 smalldatetime
資料轉換為字元資料(nchar、nvarchar、char、varchar、nchar 或 nvarchar 資料類型);或者字串格式樣式,藉以將
float、real、money 或 smallmoney 資料轉換為字元資料(nchar、nvarchar、char、varchar、nchar 或
nvarchar 資料類型)。

SQL Server 支援使用科威特演算法的阿拉伯樣式中的資料格式。

在表中,左側的兩列表示將 datetime 或 smalldatetime 轉換為字元資料的 style 值。給 style 值加
100,可獲得包括世紀數位的四位年份 (yyyy)。

不帶世紀數位 (yy) 帶世紀數位 (yyyy)
標準
輸入/輸出**
- 0 或 100 (*) 預設值 mon dd yyyy
hh:miAM(或 PM)
1 101 美國 mm/dd/yyyy
2 102 ANSI yy.mm.dd
3 103 英國/法國
dd/mm/yy
4 104 德國 dd.mm.yy
5 105 意大利 dd-mm-yy
6 106 - dd mon yy

7 107 - mon dd, yy
8 108 - hh:mm:ss
- 9 或 109 (*) 預設值 + 毫秒 mon dd
yyyy hh:mi:ss:mmmAM(或 PM)
10 110 美國 mm-dd-yy
11 111 日本 yy/mm/dd
12
112 ISO yymmdd
- 13 或 113 (*) 歐洲預設值 + 毫秒 dd mon yyyy hh:mm:ss:mmm(24h)

14 114 - hh:mi:ss:mmm(24h)
- 20 或 120 (*) ODBC 規範 yyyy-mm-dd
hh:mm:ss[.fff]
- 21 或 121 (*) ODBC 規範(帶毫秒) yyyy-mm-dd hh:mm:ss[.fff]
-
126(***) ISO8601 yyyy-mm-dd Thh:mm:ss.mmm(不含空格)
- 130* Hijri**** dd mon yyyy
hh:mi:ss:mmmAM
- 131* Hijri**** dd/mm/yy hh:mi:ss:mmmAM

* 預設值(style 0 或 100、9 或 109、13 或 113、20 或 120、21 或 121)始終返回世紀數位
(yyyy)。
** 當轉換為 datetime時輸入;當轉換為字元資料時輸出。
*** 專門用於 XML。對於從 datetime或
smalldatetime 到 character 資料的轉換,輸出格式如表中所示。對於從 float、money 或 smallmoney 到
character 資料的轉換,輸出等同於 style 2。對於從 real 到 character 資料的轉換,輸出等同於 style
1。
****Hijri 是具有幾種變化形式的日曆系統,Microsoft SQL Server 2000 使用其中的科威特演算法。

 重要 預設情況下,SQL Server 根據截止年份 2049 解釋兩位元字的年份。即,兩位元字的年份 49 被解釋為 2049,而兩位元字的年份 50
被解釋為 1950。許多用戶端應用程式(例如那些基於 OLE Automation 物件的用戶端應用程式)都使用 2030 作為截止年份。SQL Server
提供一個配置選項("兩位元字的截止年份"),藉以更改 SQL Server 所使用的截止年份並對日期進行一致性處理。然而最安全的辦法是指定四位元字年份。

當從 smalldatetime 轉換為字元資料時,包含秒或毫秒的樣式將在這些位置上顯示零。當從 datetime 或 smalldatetime
值進行轉換時,可以通過使用適當的 char 或 varchar 資料類型長度來截斷不需要的日期部分

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.