だから私はSQL Serverの2つのtime(hh:mm:ss)
を引く方法を知らない。SQL Serverで2つの時間を引く方法は?
これは私の文です:
where
(CONVERT(TIME(7), [EndWork], 102)) - (CONVERT(TIME(7), [StartWork], 102)) <
CONVERT(TIME(7), ' 8:30:00', 102)
だから私はSQL Serverの2つのtime(hh:mm:ss)
を引く方法を知らない。SQL Serverで2つの時間を引く方法は?
これは私の文です:
where
(CONVERT(TIME(7), [EndWork], 102)) - (CONVERT(TIME(7), [StartWork], 102)) <
CONVERT(TIME(7), ' 8:30:00', 102)
DECLARE @END_DATE TIME = '' ,
@START_DATE TIME = ''
SELECT CONVERT(TIME,DATEADD(MS,DATEDIFF(SS, @START_DATE, @END_DATE)*1000,0),114)
あなたはこのようDATEDIFF機能を使用しようとすることができます
where DATEDIFF(HH,StartWork, EndWork)
あなたが好きなだけでwrute問い合わせることができます:
SELECT CONVERT(varchar,(EndWork- StartWork), 108) FROM tablename
出力リターンを(hh:mm:ss)
フォーマット。
機能DATEDIFF機能を使用すると、必要に応じて、年/月/日/時/分/秒の2つの日付/時刻の違いが得られます。
例: - DATEDIFF (MINUTE , startdate , enddate)
は分残念なことに
で差分を返す--will、SQL Serverは、*インターバル*時刻を表すデータ型を持っていません。私は強く思っています*時間*を使用してその値を保存するのではなく、間隔を表すためにはあまり役に立ちません(負の値を許さず、値をサポートしません24時間以上)。したがって、あなたが減算を行ったとしても、それを 'CONVERT(TIME(7)、 '8:30:00'、102)と比較しようとするのはお勧めできません。 –
これはASP.NET MVCとは関係ありません。 –