我在MySQL有一个约会: 1395774998 。我知道这个日期是几毫秒。
我使用epochconverter.com将此日期转换为:
**GMT: Tue, 25 Mar 2014 19:16:38 GMT**
我想将此MySQL日期转换为SQL Server,而不会丢失信息。
答案 0 :(得分:0)
请试试这个
DECLARE @Datetime BIGINT, @Result datetime, @LocalDatetime BIGINT;
SET @Datetime = 1395774998
SET @LocalDatetime = @Datetime - DATEDIFF(second,GETDATE(),GETUTCDATE())
SET @Result = (SELECT DATEADD(second,@LocalDatetime , CAST('1970-01-01 00:00:00' AS datetime)))
select @Result
OR功能
CREATE FUNCTION dbo.ufn_ConvertUnixTimestampToDateTime (@Datetime BIGINT)
RETURNS DATETIME
AS
BEGIN
DECLARE @LocalDatetime BIGINT
SET @LocalDatetime = @Datetime - DATEDIFF(second,GETDATE(),GETUTCDATE())
RETURN (SELECT DATEADD(second,@LocalDatetime, CAST('1970-01-01 00:00:00' AS datetime)))
END;