我需要讓我的日期是到以下格式:SQL日期格式轉換疑問句
12/3/2011
例如,而不是12/03/2011
我目前的結果集使用SQL是:
CONVERT(VARCHAR(10), Created, 105) as Created
我怎麼能做到這一點,謝謝!
我需要讓我的日期是到以下格式:SQL日期格式轉換疑問句
12/3/2011
例如,而不是12/03/2011
我目前的結果集使用SQL是:
CONVERT(VARCHAR(10), Created, 105) as Created
我怎麼能做到這一點,謝謝!
CONVERT(CHAR(10), '\'),CONVERT(DATETIME,創建),103)
有一個更好的建議。我想補充的格式功能監守你問的是一個有點少見,
http://www.sqlusa.com/bestpractices2005/centurydateformat/
退房的fnFormatDate。然後你可以用任何你想要的格式對其進行格式化,但它可能/不可能是內聯的,你想用語句
REPLACE(CONVERT(VARCHAR(10),Created,105),'\ 0'爲創建
在SQL Server中沒有標準的日期格式返回數天或數個月的個位數。您可以使用月,日和YEAR功能
-- M/D/Y format (USA)
SELECT CAST(MONTH(@date) AS varchar(2)) + '/'
+ CAST(DAY(@date) AS varchar(2)) + '/'
+ CAST(YEAR(@date) AS varchar(4))
或
-- D/M/Y format (everywhere else)
SELECT CAST(DAY(@date) AS varchar(2)) + '/'
+ CAST(MONTH(@date) AS varchar(2)) + '/'
+ CAST(YEAR(@date) AS varchar(4))
所有這些方法可能會影響性能,如果這是對一個列滾你自己。由於C#和許多其他客戶端語言在格式化日期等功能時具有更靈活的功能,因此您應該在客戶端層應用此格式。在那裏,大概你會循環所有的行,並在你顯示它們的時候單獨處理值。
保留數據作爲數據。比較容易,做數學等。格式化字符串絕對是一種表示層功能。 – Bill 2012-04-02 15:51:40
那是MM/d/yyyy或DD/M/yyyy的? – 2012-04-02 15:23:25
日期格式105是DD/MM/YYYY(意大利風格)。因此海報想要D/M/Y。 – 2012-04-02 15:51:38
雖然問題突出了使用模糊格式的問題。對於* MOST *觀衆,明確的輸出格式更好,例如, 'YYYY-MM-DD'。 – 2012-04-02 15:54:58