2013-06-30 24 views
0

爲varchar我想這個SQL Server轉換2008 R2 datetime值:SQL服務器轉換日期時間用連字符作爲分隔符

06/30/2013 09:25:35.000 

06_30_2013_09_25_35_000 

一直沒能找到解決辦法在這個網上。基本上我想返回一個字符串在腳本中使用。

我可以得到這個日期部分,但不知道如何獲得我需要的格式?

CONVERT(nvarchar(30), my_date_time, 103) AS Expr1 

感謝您的幫助!

+2

該腳本可能比sql server更好 – flup

回答

2

您可以使用組合兩個日期格式後一起更換:

select replace(replace(replace(replace(
     CONVERT(nvarchar(30), getdate(), 110) + ' ' + 
     CONVERT(nvarchar(30), getdate(), 14), 
     '-', '_'), 
     ' ', '_'), 
     ':', '_'), 
     '.', '_') 

這裏的小提琴:http://sqlfiddle.com/#!3/d41d8/16496

+0

謝謝jtseng!很棒! – Rob

0

超級難看,但你可以嵌套replace功能做到這一點:

replace(
replace(
replace(
replace(convert(nvarchar(30), my_date_time, 103) ,'/','_') 
, ' ', '_') 
, ':', '_') 
, '.', '_') 
相關問題