首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据MySQL表数据减少变量的方法是什么?

根据MySQL表数据减少变量的方法是什么?
EN

Stack Overflow用户
提问于 2014-04-16 21:44:16
回答 1查看 75关注 0票数 0

你好,StackOverflow社区

首先,我想解释一下,我昨天发布了这个问题,但意识到人们并不真正理解问题的所在。因此,我删除了我的问题和问答,以获得一个更清楚的解释。如果不允许这样做,我很抱歉,再也不允许这样做了。

我有一张叫“点菜”的桌子,更不用说糖果了。糖果商可以以不同的价格和不同的包装尺寸出价和要求糖果。

我可能有两个糖果包(第一包有10个糖果,第二包有11个糖果),总共有21个糖果商家提供。现在有另一个聚会(叫做C)想买25块糖果。当然,这是4糖果的更多,所以我们想要尽可能清楚,并计算25糖果- 21糖果和C有剩余的4糖果,我增加到我的桌子上,直到下一个补充。这意味着我在计算(25-10-11)之后删除了包1和包2,并插入了新的值,即4(您记得,25-10-11)。

为此,我想创建一个算法/脚本。这表明,在非常简化的伪码中:

代码语言:javascript
复制
WHILE-loop initiation
IF ($candy_demand_new_offer > $candy_supply_most_recent_row)
{
$candy_demand_new_offer = $candy_demand_new_offer - $candy_supply_most_recent_row;
DELETE $candy_supply_most_recent_row;
INSERT $candy_demand_new_offer;
}

在此之后,如果需求低于供给的话,还会采取其他一些措施。但我得到的是两个新条目。这个条目是15和4,因为脚本首先计算(25-10= 15)和(15-11= 4)。当然我的插入是问题所在,但我不能把它保留为空白。因为当没有其他最近的供应时,我必须把剩下的糖果需求插入到桌子上。但不是展示每一步,而是最终的结果。

现在我该怎么做?也许我疯了,或者问题比我想象的更复杂。

谢谢你的帮助,希望你能理解我的问题描述。如果没有,请告诉我,我要学会变得更好。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-16 21:54:54

Psuedo代码答案:

代码语言:javascript
复制
while ($candies_needed > 0 && $row = fetch) {
    if ($candies_needed >= $row['candies_available']) {
        $candies_needed -= $row['candies_available'];
        DELETE this row from inventory table;
    } else {
        UPDATE this row in inventory table SET candies_available = candies_available - $candies_needed;
        $candies_needed = 0;
    }
}
if ($candies_needed > 0) { // Haven't fullfilled the entire order
    INSERT $candies_needed into order table;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23120700

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档