計算時間差(c#和sqlServer)
阿新 • • 發佈:2020-09-08
/// <summary> /// 計算兩個日期的時間間隔 /// </summary> /// <param name="DateTime1">第一個日期和時間</param> /// <param name="DateTime2">第二個日期和時間</param> /// <returns></returns> private string DateDiff(DateTime DateTime1, DateTime DateTime2) {string dateDiff = null; TimeSpan ts1 = new TimeSpan(DateTime1.Ticks); TimeSpan ts2 = new TimeSpan(DateTime2.Ticks); TimeSpan ts = ts1.Subtract(ts2).Duration(); dateDiff = ts.Days.ToString()+"天" + ts.Hours.ToString()+"小時" + ts.Minutes.ToString()+"分鐘" + ts.Seconds.ToString()+"秒"; return dateDiff; }
//比較時間大小
string st1="12:13";
string st2="14:14";
DateTime dt1=Convert.ToDateTime(st1);
DateTime dt2=Convert.ToDateTime(st2);
DateTime dt3=DateTime.Now;
if(DateTime.Compare(dt1,dt2)>0)msg.Text=st1+">"+st2;
else
msg.Text=st1+"<"+st2;
--如果
--RemindTime='' RemindFormata為空
--RemindTime大於現在,那麼獲取其時間差 。。天。。小時。。分鐘
--RemindTime小於現在,那麼擷取獲取其日期 例:08-31 select case when a.RemindTime='' then '無' when a.RemindTime>GetDATE() then cast(floor(datediff(minute,GETDATE(),a.RemindTime) / 1440) as varchar)+'天'+cast(floor((datediff(minute,GETDATE(),a.RemindTime) % 1440)/60) as varchar)+'小時'+ cast(((datediff(minute,GETDATE(),a.RemindTime))-(floor(datediff(minute,GETDATE(),a.RemindTime) / 1440) *1440)-(floor((datediff(minute,GETDATE(),a.RemindTime) % 1440)/60)*60)) as varchar)+'分' when a.RemindTime<GetDATE() then SUBSTRING(CONVERT(varchar(10), a.RemindTime, 23),6,10) end as RemindFormata from [dbo].[收文] as a order by ID DESC