SQLServer EXCELのFLOORやCEILINGみたいに基準値を使って処理する方法
エクセルで作られた処理を移植しようとしたら、ceiling、floor に基準値の指定ができなくて困ったので、こんな風に対応してみました。
コード
declare
@値 float
,@基準値 float
set @値 = 13.1
set @基準値 = 0.5
--ceiling(x,y)
select case when @値 - floor(@値) <= @基準値 and @値 - floor(@値) > 0 then floor(@値) + @基準値 else ceiling(@値) end
--floor(x,y)
select case when @値 - floor(@値) < @基準値 then floor(@値) else floor(@値) + @基準値 end