库存的SQL语句中的减法

时间:2016-05-26 21:57:12

标签: php mysql laravel laravel-4

数据库列出项目及其库存计数。当有人购买物品时,我希望更新数据库中的库存数量。

无论以下减法f_item_number = f_item_number - $mugAmount如何,我的更新声明都不起作用。

如果我在数据库中有200个马克杯。当我运行以下语句时,新的马克杯数量之后被错误地列为-1。而不是预期值199.为什么会这样?

DB::update('UPDATE `shop_items` SET `f_item_number` = ? WHERE `f_item_name` = ?', array(`f_item_number` - $mugAmount, "mug"));

1 个答案:

答案 0 :(得分:2)

您无法在参数中传入数据库列文本。试试这个

DB::update('UPDATE `shop_items` SET `f_item_number` = `f_item_number` - ? WHERE `f_item_name` = ?', array($mugAmount, "mug"));