请在存储过程中帮助我进行以下计算。
我的情景是打包杂志
示例:
订单= 6042份。 6042必须每包20个,所以我得到302个捆绑,余额为2个。
如果我除6042/20,结果为302.10。如何将302和2存储在不同的列中,这意味着302是一列,2是另一列。
包装数量也不同。像20或30或50或10的时间 副本也不同,最多9999份
目前我的存储过程是:
UPDATE [dbo].[SOMaster_TEMP]
SET [BSTD] = [Qty] / [STDB]
UPDATE [dbo].[SOMaster_TEMP]
SET [BEND] = [Qty] / [STDB]
Qty
是副本= 6042。 STDB
=每捆20个。
BSTD
计算为302.10。
BEND
也是302.10。答案 0 :(得分:0)
如果这些是INT
数据类型,那么您可以轻松使用整数除法和模运算符:
DECLARE @Qty INT = 6042
DECLARE @PerBundle INT = 20
SELECT
NumberOfBundles = @Qty / @PerBundle,
BalanceCopies = @Qty % @PerBundle
这导致: