My查询:
UPDATE `settings_products` SET `stock_osrs` = SUM(stock_osrs - 50)我有一个股票系统在我的管理面板,目前显示股票水平设置的管理员,但我正在创建一个API,使每一笔付款已经完成将带走股票。
让我们说,所订购的金额与查询中的"50“类似,我想将其从stock_osrs中删除。
我到底该怎么做?
编辑:我知道我可以使用PHP进行计算,然后从PHP中更新表,但我觉得这样做不太可靠,因为我必须做" 50 ,000“-50= "45,950”,并将该编号张贴到数据库中。
在这段时间里,可能会有另一个顺序会导致代码混乱,因此我需要使用SQL来实现这一点!
发布于 2017-12-04 17:30:17
UPDATE `settings_products` SET `stock_osrs` = `stock_osrs` - 50SUM()对一组记录进行操作,例如,SELECT SUM(stock_osrs) FROM settings_products WHERE...将为一组记录提供stock_osrs的总数。也可以使用SUM() --例如,获取一个表中记录的SUM(),并将其存储在另一个表中的字段中,但这会变得更加复杂。对于简单的内单记录数学,只需包括方程。您甚至可以包含多个字段,例如UPDATE inventory SET available = onhand - onorder或类似的语句。
发布于 2017-12-04 17:26:50
我认为你只是尝试在一个领域做负50,所以这应该是可行的。
UPDATE `settings_products` SET `stock_osrs` = `stock_osrs` - 50发布于 2017-12-04 17:26:53
使用此查询可以解决您的问题。
你可以直接执行数学运算。
UPDATE settings_product SET stock_osrs=stock_osrs-50;我已经验证了上面的查询成功了,尝试一下吧。
https://stackoverflow.com/questions/47638617
复制相似问题