Tag Info

Hot answers tagged


Why don't you just use?: WHERE DateTime >= '2014-01-01' AND DateTime < CONVERT(CHAR(19), DATEADD(second, 1, GETDATE()), 126) Advantages: - No values in the varchar column will be converted so you'll get no errors - Efficiency as indexes can be used Disadvantages: - does not take care of timezone offsets - some of the values, while being ...


Try type casting to datetimeoffset type as below: CAST(datetime as DATETIMEOFFSET) For instance your query will become something like following: SELECT * FROM dbo.RebroadcastSmoothStreaming WHERE (CAST(datetime as DATETIMEOFFSET) BETWEEN CAST('2014-01-01T00:00:00-06:00' AS datetimeoffset) AND dateadd(day, 1, SYSDATETIMEOFFSET())) ORDER BY Ip


The issue is that you cannot CONVERT or CAST a VARCHAR ISO8601 datetime with an offset to a DATETIME. From SQL Server 2008 onwards, the DATETIMEOFFSET datatype was introduced to handle datetimes with offsets. As answered elsewhere, you would need to CAST your DateTime VARCHAR column to a DATETIMEOFFSET SELECT * FROM dbo.RebroadcastSmoothStreaming WHERE ...

Only top voted, non community-wiki answers of a minimum length are eligible