9 98lh Unregistered / Unconfirmed GUEST, unregistred user! 2008-08-29 #1 小于等于12的数返回 1<br>大于12小于等于24的数返回 2<br>select ceiling(11/12) 返回 0 而不返回1<br>select ceiling(13/12) 返回 1 而不返回2
小于等于12的数返回 1<br>大于12小于等于24的数返回 2<br>select ceiling(11/12) 返回 0 而不返回1<br>select ceiling(13/12) 返回 1 而不返回2
D deardai Unregistered / Unconfirmed GUEST, unregistred user! 2008-08-29 #2 把你要比较的数加上12然后<br>select ceiling((11+12)/12) <br>select ceiling((13+12)/12)
L levi Unregistered / Unconfirmed GUEST, unregistred user! 2008-08-29 #3 不是这个原因了,LZ忘记了, SQL中整数除以整数得到的结果是整数吗?<br>所以 11/12本身SQL返回结果就是0,Ceiling一下,依然是0<br><br>改进方法是用 Select Ceiling(11/12.0) 就可以了<br><br>如果是字段 用Cast(字段名 as decimal(18,1))就可以了
不是这个原因了,LZ忘记了, SQL中整数除以整数得到的结果是整数吗?<br>所以 11/12本身SQL返回结果就是0,Ceiling一下,依然是0<br><br>改进方法是用 Select Ceiling(11/12.0) 就可以了<br><br>如果是字段 用Cast(字段名 as decimal(18,1))就可以了
X xingxin00 Unregistered / Unconfirmed GUEST, unregistred user! 2008-08-29 #4 Levi说的没错,你计算的除法的结果,并不是所取的范围,可以利用变量进行判断啊,我认为这样比较简单。