在SQL Server中獲得不包含時間部分的日期

iSQlServer發表於2009-12-25
在本文中,GetDate()獲得的日期由兩部分組成,分別是今天的日期和當時的時間: Select GetDate()

  用DateName()就可以獲得相應的年、月、日,然後再把它們連線起來就可以了:

  Select Datename(year,GetDate())+'-'+Datename

  (month,GetDate())+'-'+Datename(day,GetDate())

  另外,DateName()還可以獲得到小時、時間、秒、星期幾、第幾周,分別如下:

  Select Datename(hour,GetDate())

  Select Datename(minute,GetDate())

  Select Datename(second,GetDate())

  Select Datename(weekDay,GetDate())

  Select Datename(week,GetDate())

  SQL中的日期型別DateTime的預設格式就是yyyy-mm-dd hh:mi:ss: mmm,可大多數的情況我們只想得到他的日期部分,而不許要後面的時間。上一篇中提到用Datename()函式來擷取拼接出不包含時間部分的日期,現在再說一種方法,更加簡單的獲取到不包含時間的日期!

  使用Convert()函式:

  select convert(char(10),GetDate(),120) as Date

  * 第3個引數就是用來設定日期型別資料的顯示樣式的,下面介紹幾種樣式的引數:

  100 mm dd yyyy

  101 mm/dd/yyyy

  102 yyyy.mm.dd

  103 dd/mm/yyyy

  106 dd mm yyyy

  108 hh:mi:ss(時間)

  111 yyyy/mm/dd

  112 yyyymmdd

  120 yyyy-mm-dd

  大家可以發現,用這種方法獲得日期部分將會更加方便,與這種方法比較Datename()函式的好處就是在於得到日期的具體部分。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16436858/viewspace-623606/,如需轉載,請註明出處,否則將追究法律責任。

相關文章