首先讓我感謝大家的幫助。將Unix時代轉換爲SQL或.NET中的秒數
我需要的是一個函數,它接受一個EPOCH時間戳,如1452.235687,並將它轉換爲可讀的時間戳,如'01 -01-1970 00:00:00'。更具體地說,我只需要時間而不是日期。
如果可能,我寧願使用.NET函數而不使用SQL存儲過程。但是,SQL存儲過程也可以很好地工作。
再次感謝您,
首先讓我感謝大家的幫助。將Unix時代轉換爲SQL或.NET中的秒數
我需要的是一個函數,它接受一個EPOCH時間戳,如1452.235687,並將它轉換爲可讀的時間戳,如'01 -01-1970 00:00:00'。更具體地說,我只需要時間而不是日期。
如果可能,我寧願使用.NET函數而不使用SQL存儲過程。但是,SQL存儲過程也可以很好地工作。
再次感謝您,
double EpochSeconds = 1272672608.55;
DateTime time = new DateTime(1970, 1, 1).AddSeconds(EpochSeconds);
Console.WriteLine(time);
打印出:
5/1/2010 12:10:08 AM
如果你只是想的時候,你可以使用time.TimeOfDay
。
您可以創建UNIX新紀元(1970-01-01)DateTime對象,並使用AddSeconds
方法。
PowerShell的演示:
PS Home:> $e = [datetime]"1970-01-01"
PS Home:> $e.AddSeconds(1452.235687).TimeOfDay
Days : 0
Hours : 0
Minutes : 24
Seconds : 12
Milliseconds : 236
Ticks : 14522360000
TotalDays : 0,016808287037037
TotalHours : 0,403398888888889
TotalMinutes : 24,2039333333333
TotalSeconds : 1452,236
TotalMilliseconds : 1452236
謝謝tzaman,這是完美的! – CodingIsAwesome 2010-05-03 16:12:44
不客氣! :) – tzaman 2010-05-03 17:53:37