私は2回start_time
とend_time
char型を持っています。それらの違いを見つける方法は?
たとえば、mystart_time
が午前 10:00 で午前end_time
11:15 の場合、時差は 1:15 と表示されます。
私は2回start_time
とend_time
char型を持っています。それらの違いを見つける方法は?
たとえば、mystart_time
が午前 10:00 で午前end_time
11:15 の場合、時差は 1:15 と表示されます。
これを試して:
declare @starttime varchar(10)='10:00 AM'
declare @endtime varchar(10)='11:15 AM'
select cast((datediff(Mi,convert (time,@starttime),
convert (time,@endtime))/60) as varchar(5))+':'+
cast((datediff(Mi,convert (time,@starttime),
convert (time,@endtime))%60) as varchar(5))
1:15
次のクエリを試してみてください。MySQL では問題なく動作します。
select TIME_FORMAT((TIME( STR_TO_DATE( '11:15 PM', '%h:%i %p' ) ) - TIME( STR_TO_DATE( '10:00 PM', '%h:%i %p' ))),'%h:%i');
これを試して:
SELECT left(CONVERT(varchar(12), DATEADD(ms, DATEDIFF
(ms, CAST('10:00 AM' AS DATETIME), CAST('11:15 AM' AS DATETIME)) , 0), 108),5);
結果
01:15
SELECT left(CONVERT(varchar(12), DATEADD(ms, DATEDIFF
(ms, CAST('09:00 AM' AS DATETIME), CAST('11:15 AM' AS DATETIME)) , 0), 108),5);
結果
02:15
次のようにできます。
SELECT LEFT(convert(varchar,CAST('11:15 AM AS DATETIME)-CAST('10:00 AM' AS DATETIME),108),5)