如何可靠地将 YYYYMMDDhhmmss<offset> 转换为 date/time?
How can I reliably convert YYYYMMDDhhmmss<offset> to a date/time?
我有一个数据源,日期返回如下:20150614140520-0500
如何更好地显示它?技术上其实不用转换,这个只是做报告用的。理想情况下它会输出 2015-06-14 2:05 PM (EST)
但我也希望语句尽可能简单,因此时区偏移和 12 小时时间是可选的。
我尝试了 CAST ('20150614140520-0500' As Date)
但它 returns null
我也尝试了 CAST (LEFT('20150614140520-0500',14) As Date)
以及其他一些变体,但没有成功。
请试试这个:
convert(datetime,stuff(stuff(stuff(datevalue, 9, 0, ' '), 12, 0, ':'), 15, 0, ':')) ConvertedDate
正如 Dinesh Kumar Rajendran 在其博客中所建议的那样:
https://rdineshkumar.wordpress.com/tag/how-to-convert-yyyymmddhhmmss-to-datetimedatetime-in-sql-server/
您必须取上例中的前 14 个字符:
print convert(datetime,stuff(stuff(stuff(LEFT('20150614140520-0500',14) , 9, 0, ' '), 12, 0, ':'), 15, 0, ':'))
我有一个数据源,日期返回如下:20150614140520-0500
如何更好地显示它?技术上其实不用转换,这个只是做报告用的。理想情况下它会输出 2015-06-14 2:05 PM (EST)
但我也希望语句尽可能简单,因此时区偏移和 12 小时时间是可选的。
我尝试了 CAST ('20150614140520-0500' As Date)
但它 returns null
我也尝试了 CAST (LEFT('20150614140520-0500',14) As Date)
以及其他一些变体,但没有成功。
请试试这个:
convert(datetime,stuff(stuff(stuff(datevalue, 9, 0, ' '), 12, 0, ':'), 15, 0, ':')) ConvertedDate
正如 Dinesh Kumar Rajendran 在其博客中所建议的那样: https://rdineshkumar.wordpress.com/tag/how-to-convert-yyyymmddhhmmss-to-datetimedatetime-in-sql-server/
您必须取上例中的前 14 个字符:
print convert(datetime,stuff(stuff(stuff(LEFT('20150614140520-0500',14) , 9, 0, ' '), 12, 0, ':'), 15, 0, ':'))