datatime型的字段MAKE_DATE,里面的值是'2002-12-02?? 00:00:00.000',??
? 我用什么函數(shù),或者簡便的方法,可以取出像這樣的數(shù)據(jù)'2002-12-02'(只取日期,月日要補零)?
要得到不同格式的日期和時間,你需要使用函數(shù)CONVERT()。例如,當下面的這個語句執(zhí)行時,顯示的時間將包括毫秒:
SELECT CONVERT(VARCHAR(30),GETDATE(),9)
注意例子中數(shù)字9的使用。這個數(shù)字指明了在顯示日期和時間時使用哪種日期和時間格式。當這個語句執(zhí)行時,將顯示如下的日期和時間:
Nov 30 1997 3:29:55:170AM
(1 row(s) affected)
在函數(shù)CONVERT()中你可以使用許多種不同風格的日期和時間格式。下表顯示了所有的格式。
日期和時間的類型:
類型值?????????????? 標準?????????????? 輸出
?? 0???????????????? Default?????????? mon dd yyyy hh:miAM
?? 1???????????????? USA?????????????? mm/dd/yy
?? 2???????????????? ANSI????????????? yy.mm.dd
?? 3???????????????? British/French??? dd/mm/yy
?? 4???????????????? German??????????? dd.mm.yy
?? 5???????????????? Italian?????????? dd-mm-yy
?? 6???????????????? -???????????????? dd mon yy
?? 7???????????????? -???????????????? mon dd,yy
?? 8???????????????? -???????????????? hh:mi:ss
?? 9??????????????????????? Default + milliseconds--mon dd yyyy
hh:mi:ss:mmmAM(or )
?? 10??????????????? USA????????????? mm-dd-yy
?? 11??????????????? JAPAN??????????? yy/mm/dd
?? 12??????????????? ISO????????????? yymmdd
?? 13??????????????? Europe?????????? Default + milliseconds--dd mon yyyy
?????????????????????????????????????? hh:mi:ss:mmm(24h)
?? 14???????????????? -??????????????? hh:mi:ss:mmm(24h)
?? 類型0,9,和13總是返回四位的年。對其它類型,要顯示世紀,把style值加上100。類型13和14返回24小時時鐘的時間。類型0,7,和13返回的月份用三位字符表示(用Nov代表November).
對表中所列的每一種格式,你可以把類型值加上100來顯示有世紀的年(例如,00年將顯示為2000年)。例如,要按日本標準顯示日期,包括世紀,你應(yīng)使用如下的語句:
SELECT CONVERT(VARCHAR(30),GETDATE(),111)
??? 在這個例子中,函數(shù)CONVERT()把日期格式進行轉(zhuǎn)換,顯示為1997/11/30
方法:
select?? convert(varchar(8),getdate(),112)??
? --------????
? 20021203??
? select?? convert(varchar(10),getdate(),120)??
? ----------????
?
?
? select?? CONVERT(varchar(10),?? getDate(),120)?? --不要時間2002-1-1??
? select?? convert(char(8),getdate(),112)?? ----20020101??
? select?? convert(char(8),getdate(),108)???? ---06:05:05??
? 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?? 規(guī)范?? yyyy-mm-dd?? hh:mm:ss[.fff]????
? 21?? 或?? 121?? (*)???? ODBC?? 規(guī)范(帶毫秒)?? yyyy-mm-dd?? hh:mm:ss[.fff]????
? 126(***)?? ISO8601?? yyyy-mm-dd?? Thh:mm:ss:mmm(不含空格)????
? 130*?? 科威特?? dd?? mon?? yyyy?? hh:mi:ss:mmmAM????
? 131*?? 科威特?? dd/mm/yy?? hh:mi:ss:mmmAM
?
CONVERT的使用方法:
////////////////////////////////////////////////////////////////////////////////////////
格式:
CONVERT(data_type,expression[,style])
說明:
此樣式一般在時間類型(datetime,smalldatetime)與字符串類型(nchar,nvarchar,char,varchar)
相互轉(zhuǎn)換的時候才用到.
例子:
SELECT CONVERT(varchar(30),getdate(),101) now
結(jié)果為
now
---------------------------------------
09/15/2001
/////////////////////////////////////////////////////////////////////////////////////
style數(shù)字在轉(zhuǎn)換時間時的含義如下
-----------------------------------------------------------------------------------------
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