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
個人觀點