是否可以通過特定模式更改格式日期?我需要創建一個具有兩個參數的函數。第一個是日期和第二個是模式。我需要轉換更多日期變體。目標這個功能是改變美國和歐洲的日期格式。T-SQL格式日期格式
例如,我需要轉換
歐盟:DD:MM:YYYY HH:MM:SS 到 美國:MM:DD:YYYY HH:mm:ss的
在另一頁,我需要改變
歐盟:DD/MM/YYYY 到 美國:MM/DD/YYYY
,我有幾個變種旁邊轉換
,我想提出一個類似的功能
Formater(euDate, pattern)
BEGIN
....
RETURN usDate
我的生產服務器是不幸的是SQL Server 2005和不支持的功能FORMAT()
。而功能CONVERT()
不支持某些日期變體,我需要轉換。因此,在我目前的解決方案中,我將歐盟日期解析爲個別部分(@day = day(@euDate), @month, @year, ...)
並將它們加入新字符串中。我將它與模式中的輸入參數進行比較,並返回與模式相同的CASE。我想讓這個功能變得一般而簡單。
謝謝您的建議。
你可以使用CLR程序集嗎?那些在2005年的工作,並從我記得,SQL Server的新版本的FORMAT()方法的基本上只是一個包裝標準的通用語言運行時格式化方法。 –