13

こんにちは、SQL で 5 の倍数に切り上げる方法はあるのでしょうか。

たとえば、@Order = 8 または 9 を設定した場合、これは 10 に切り上げられるだけですが、7 または 6 の場合は 5 に切り捨てられ、6 または 7 の場合は 10 に切り上げる必要があります。

declare @Order int

set @Order = 7

select round(cast(@Order as float)/cast(5 as float),0)*5

私は欲しい

  • @Order = 1,2,3,45に丸める
  • @Order = 6,7,8,910に丸める
  • @Order = 11,12,13,1415に切り上げる
4

4 に答える 4

4
SELECT CEILING(@Order / 5.0) * 5
于 2013-05-16T16:23:33.917 に答える
-1

同じ問題に対する別のアプローチを次に示します。

declare @num as int
set @num = 12

select @num + case when @num%5=0 then 0 else 5-(@num%5) end 
于 2013-05-16T16:22:19.033 に答える