-1

当我想从表中舍入到特定的手数时,如何在 sql 中舍入。因此,如果需要是 51,但我的手数是 50,我希望它以 100 回来。

4

4 回答 4

0
SELECT 50*CEIL(qty / 50) AS RoundedQty FROM table_name

或者如果你有lot_size专栏:

SELECT lot_size*CEIL(qty / lot_size) AS RoundedQty FROM table_name
于 2015-10-15T16:23:28.580 回答
0

如果你想四舍五入到最接近的 50,所以 1 -> 50、48 -> 50、51 -> 100、87 -> 100 等等,然后

select ((@number div 50) + 1) * 50

在哪里用你想要四舍五入的值代替@number。

于 2015-10-15T16:23:46.867 回答
0

我假设“手数”是列字段名称?如果是这样,IF 语句可能就是您想要的。下面是一个简单的例子

 SELECT IF (lot_size > 49, 100, lot_size) AS lot_size FROM table_name
于 2015-10-15T16:18:42.367 回答
0

您是否尝试过使用案例陈述?Select CASE WHEN Lot < 50 THEN Lot ELSE 100 END FROM YourTable

这仅在您有几个不同的舍入选择时才有效,放置太多案例语句将花费大量时间

于 2015-10-15T16:15:49.083 回答