2012-01-18 15 views
0

私はExcelシートを持っており、この式は以下のとおりです。私はSQLと同じ数式を計算したいと思います。結果は2番目になります。SQL日時計算

declare @t1 AS datetime 
declare @t2 AS datetime 
declare @t3 AS datetime 
declare @t4 AS datetime 

set @t1 = '2011-11-04 00:00:00.000' --start date 
set @t2 = '2012-01-16 18:21:55.000' --start time 
set @t3 = '2011-11-10 00:00:00.000' --end date 
set @t4 = '2012-01-16 12:10:00.000' --end time 

Excelの数式

((end date-start date-1)+(end time-(0,375)))*24*60*60 

0375値が9時間

数式の結果は、あなたがスタートを使用していないことを言及= 443400秒

+1

あなたのRDBMSは何ですか? –

+3

コード、XML、またはデータサンプルを投稿する場合は、**これらの行をテキストエディタで強調表示し、エディタツールバーの "コードサンプル"ボタン( '{}')をクリックすると、フォーマットや構文が強調表示されます。 (各行を '
' ...で終了する必要はありません) –

+0

RDBMS、MSSQL 2008 – qods

答えて

3

なることを意味し、ありがとう数式の時間は?ここで

それが来る:

declare @t1 AS datetime 
declare @t2 AS datetime 
declare @t3 AS datetime 
declare @t4 AS datetime 

set @t1 = '2011-11-04 00:00:00.000' --start date 
set @t2 = '2012-01-16 18:21:55.000' --start time 
set @t3 = '2011-11-10 00:00:00.000' --end date 
set @t4 = '2012-01-16 12:10:00.000' --end time 

SELECT CAST((DATEDIFF(d, @t1, @t3)-1 + (CAST(@t4 AS FLOAT) - FLOOR(CAST(@t4 AS FLOAT)) - 0.375))*24*60*60 AS INT) 
+0

オレグ、ありがとう、あなたはSQLの練習のための日付計算についての任意のWebサイトを知っていますか? – qods

+0

Google Sql Server Books Online –