1

列 、Col1形式HH:MM:SS、および整数列 がありますCol2Col1 / Col2の形式で計算しようとしていますHH:MM:SS。どうやってやるの?

変換関数を使用してみましたが、以下のクエリは変換された値を無視しています。これは、私が使用した Convert ステートメントです。

CONVERT(VARCHAR,Col1 / 1920) + ':' + RIGHT('00' + CONVERT(VARCHAR, Col1% 60), 2) AS Time,

次のクエリを使用して除算を試みています

select (DateTime),(Col1),(Col2),
cast((Col2 - Col1 ) as int) 
    / case when [CallsHandledHalf] = 0 then null 
           else [Col2] end as [AVG]
from Table
where ValueID ='5122'
and DateTime between '11/01/12 05:00' and '11/30/12 16:30'
4

1 に答える 1

1

SQL Server(2008以降)を使用していると仮定すると、おそらく次のことが問題を解決します。

-- starting with a string in HH:MM:SS format
declare @s varchar(8)
set @s = '12:00:00'

-- set a divisor
declare @d int
set @d = 2

-- divide the total seconds by the divisor
set @s = convert(time(0), dateadd(second, datediff(second, 0, @s) / @d, 0))

-- output the results   '06:00:00'
print @s

そもそも時間の値をデータ型に保持する必要があることに注意してください。ただし、timeこのように前後に移動できる暗黙の変換が許可されています。

于 2013-02-15T22:59:38.500 に答える