SQL中CONVERT轉化日期函數的使用方法(整理一些高手的貼子)

ljsql  的回覆:

SQL中CONVERT轉化函數的用法

CONVERT的使用方法:

////////////////////////////////////////////////////////////////////////////////////////

格式:
CONVERT(data_type,expression[,style])

說明:
此樣式一般在時間類型(datetime,smalldatetime)與字符串類型(nchar,nvarchar,char,varchar)
相互轉換的時候纔用到.

例子:
SELECT   CONVERT(varchar(30),getdate(),102)   now
結果爲
now
---------------------------------------
09/15/2001

/////////////////////////////////////////////////////////////////////////////////////

style數字在轉換時間時的含義如下

-------------------------------------------------------------------------------------------------
Style(2位表示年份)   |   Style(4位表示年份)   |   輸入輸出格式  
-------------------------------------------------------------------------------------------------
-   |   0   or   100   |   mon   dd   yyyy   hh:miAM(或PM)  
-------------------------------------------------------------------------------------------------
1   |   101   |   mm/dd/yy  
-------------------------------------------------------------------------------------------------
2   |   102   |   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   or   109   |   mon   dd   yyyy   hh:mi:ss:mmmmAM(或PM)
-------------------------------------------------------------------------------------------------
10   |   110   |   mm-dd-yy  
-------------------------------------------------------------------------------------------------
11   |   111   |   yy/mm/dd  
-------------------------------------------------------------------------------------------------
12   |   112   |   yymmdd  
-------------------------------------------------------------------------------------------------
-   |   13   or   113   |   dd   mon   yyyy   hh:mi:ss:mmm(24小時制)  
-------------------------------------------------------------------------------------------------
14   |   114   |   hh:mi:ss:mmm(24小時制)  
-------------------------------------------------------------------------------------------------
-   |   20   or   120   |   yyyy-mm-dd   hh:mi:ss(24小時制)  
-------------------------------------------------------------------------------------------------
-   |   21   or   121   |   yyyy-mm-dd   hh:mi:ss:mmm(24小時制)  
------------------------------------------------------------------------------------------------- 

二、wgsasd311 的回覆:

--1.如果mydate是datetime類型字段
select   convert(char(10),myDate,120)   from   myTable
--1.如果mydate是 "字符 "類型字段
select   convert(char(10),cast(myDate   as   datetime),120)   from   myTable

可以將日期格式爲20080315 轉換爲2008-03-15。

三、如果你從EXCEL導入的數據到SQL SERVER 庫裏,從EXCEL導入的20080315數字到SQL裏後,可能這些數字變成了20080315.0000帶有小數點的值了,你必須先轉換爲整型,才能轉換爲日期型的。如下:

set     abc=20080315.0000

abcd = convert(char(10),cast(abc as int),20)   --這一步相當於把小數點後的4個0000去掉了

convert(char(10),cast(abcd as datetime),20)  --輸出日期爲:2008-03-15

個人觀點
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章