如何datetime值轉換爲nvarchar,並希望將其格式化「月,年」,例如2009年10月1日值應轉換爲:「2009年10月」轉換日期時間爲nvarchar,只是年份和月份
回答
使用這個:
select CONVERT(nvarchar(50), DATENAME(m, getdate())
+ ', '
+ DATENAME(yyyy, getdate())
)
OUTPUT:
--------------------------------------------------
October, 2009
(1 row(s) affected)
的一種方式將使用日期名稱來提取名稱格式所需的部分,所以:
select轉換(nvarchar,datename(m,getdate()))+ N','Convert(nvarchar,datename (yy, getdate()))
並用您的日期變量/字段替換getdate()。
將一次轉換爲nvarchar會更高效。也不要忘記,如果你沒有在CONVERT中指定一個nvarchar長度,它默認爲30,並且會截斷。例如運行這個_SELECT CONVERT(nvarchar,'abcdefghijklmnopqrstuvwxyz1234567890')_你只能得到前30個字符,並且不會看到截斷字符:「567890」,並且沒有錯誤或警告。 – 2009-10-01 12:58:18
的DATENAME功能將提供您所需要的格式:
DATENAME(m, date) + ', ' + DATENAME(yyyy, date)
轉換爲特定大小的nvarchar的可以通過轉換函數來完成:
CAST(value AS nvarchar[30])
日期部分將僅返回數字,需要日期名稱 – 2009-10-01 12:36:50
日期部分是數字表示形式,不幸的是不是名稱表示形式。 – Andrew 2009-10-01 12:37:38
固定。謝謝。 – 2009-10-01 12:41:48
試試這個
DECLARE @DateTime DATETIME
SET @DateTime = '01 Oct 2009'
SELECT @DateTime
SELECT DATENAME(mm, @DateTime) + ', ' + CAST(DATEPART(yy, @DateTime) AS VARCHAR(4))
不會返回nvarchar作爲OP請求 – 2009-10-01 12:51:09
然後轉換它,或分配給nvarchar變量... – 2009-10-01 13:23:19
嘗試以下查詢:
Select case Convert(int, day(getdate())) when 1 then '1st' when 2 then '2nd'
when 3 then '3rd' else Convert(varchar, day(getdate()))+'th' end +' '+ Convert(varchar, Datename(m,getdate()))+' ' +Convert(varchar, Datename(yy,getdate())) as Date
可以更換GETDATE()與任何其他日期。
請檢查是否有幫助。
- 1. 月份和年份的日期轉換
- 2. 將字符串轉換爲日期時間爲年份和月份SQL
- 3. 將年份和月份(「yyyy-mm」格式)轉換爲日期?
- 4. 將年份日月轉換爲月份日
- 5. 轉換日期到月份名稱和年份
- 6. 如何將月份轉換爲java中的年份和月份
- 7. 計算月份和年份的日期
- 8. 只月份和年份
- 9. 關於日期 - 時間差異的月份和年份
- 10. 如何與日期時間一起創造月份和年份
- 11. 從日期,月份和年份開始的Python時間戳
- 12. 時間戳記日期,月份和年份jquery
- 13. 從日期時間視場中的年份和月份條目
- 14. 如何將GETDATE()轉換爲只有時間忽略的日期,月份和年份
- 15. 將日期時間拆分爲日期/年/月/日名稱和計數年份
- 16. 轉換日期格式(只有年份)
- 17. 字符串到日期時間的轉換 - 指定在日期和月份日期的年份
- 18. 日期格式爲UTC月份日期和年份(MMM DD,YYYY)
- 19. 轉換爲R的年份中的日期和時間
- 20. 轉換爲日期時間和提取月份名稱
- 21. 如何使用SimpleDateFormat解析日期只有月份和年份
- 22. 如何設置datepicker的日期只顯示月份和年份
- 23. SQL查詢日期只使用年份和月份
- 24. SQL:只月份和年份列比較日期
- 25. LINQ如何按日期分組日期和月份和年份
- 26. 轉換一個月名在日期月份數,兩位數日期和月份
- 27. 乳膠日期日期時間計算月份日年
- 28. 2日期間的所有年份和月份SQL
- 29. mysql:按年份和月份(無日期)如何做日期
- 30. Ember日期獲得月份,年份和日期
非常好的答案... – 2009-10-01 13:24:20
如果他想把它放入已經聲明爲nvarchar的變量中,則不需要該轉換器,因爲它會在信息放入變量時隱式轉換。我知道varchar數據沒有隱式轉換的唯一地方就是在SSIS中。 – HLGEM 2009-10-01 14:29:27