2020
12-14
12-14
sql server把退款总金额拆分到尽量少的多个订单中详解
一、问题原来有三个充值订单,现在要退款450元,如何分配才能让本次退款涉及的充值订单数量最少?具体数据参考下图:二、解决方案Step1:对可退金额进行降序排列,以便优先使用可退金额比较大的订单Step2:使用CTE公用表达式,实现类似for或while循环或游标的功能三、脚本createtable#t(充值int,已退int,可退int)insertinto#t(充值,已退,可退)values(200,100,100),(500,200,300),(300,100,200)/*作者:z...
继续阅读 >