我有一个SQL Server 2008.我得到一个icinga/nagios时间戳服务器停机时间。如何将Nagios时间戳转换为日期时间?
它正是这种格式Wed Apr 10 14:45:00 CEST 2013
。
这是一个奇怪的格式对我来说。我想将它转换成t-sql datetime - 但不知道如何。
我有一个SQL Server 2008.我得到一个icinga/nagios时间戳服务器停机时间。如何将Nagios时间戳转换为日期时间?
它正是这种格式Wed Apr 10 14:45:00 CEST 2013
。
这是一个奇怪的格式对我来说。我想将它转换成t-sql datetime - 但不知道如何。
由于CEST是+02:00
select
CONVERT(VARCHAR(3), DATENAME(WEEKDAY,
switchoffset(CAST(date_column_name as datetimeoffset),'+02:00')), 100)
+ ' ' +
CONVERT(VARCHAR(3), DATENAME(MM,
switchoffset(CAST(date_column_name as datetimeoffset),'+02:00')), 100)
+ ' ' +
DATENAME(DAY,
switchoffset(CAST(date_column_name as datetimeoffset),'+02:00'))
+ ' ' +
CONVERT(VARCHAR(8),
switchoffset(CAST(date_column_name as datetimeoffset),'+02:00'), 108)
+ ' CEST ' +
DATENAME(YEAR,
switchoffset(CAST(date_column_name as datetimeoffset),'+02:00'))
from adm_co_users
我第一Converting the Date to CEST Time Zone然后提取的日期的要求。
如何:
select Cast(
-- Day
substring(@sTimestamp, 9, 2) + ' '
-- Month
+ substring(@sTimestamp, 5, 3) + ' '
-- Year
+ substring(@sTimestamp, 26, 4) + ' '
-- Time
+ substring(@sTimestamp, 12, 8) + ' '
as datetime)
这不会做的时区东西虽然 - 我建议你把东西在那。
+1经验值。但是我是'SQL'中的新手,因此**外行人方法**。如何做很多搜索来获得答案。但你的答案是最好的。 – Luv
时间戳总是CEST,还是还有其他时区?并且,如何将数据导入到SQL Server中,使用[ISO 8601格式](http://msdn.microsoft.com/zh-cn/library/ms187819.aspx)将数据转换为数据库可能更容易一种具有良好文本解析和/或日期库支持的语言,然后加载它。 – Pondlife