2016-10-12 81 views
1

我有一个select语句SELECT item, quantity FROM sometable返回以下数据:mysql的语句来更新动态

Item  Quantity 
    21   23 
    22   12 
    23   15 

是否有可能通过一个中减去,这是较小的项目的数量(使用SQL语句)。在上述情况下,第22项的数量应该为11.

使用语句SELECT item, quantity FROM sometable ORDER BY quantity LIMIT 1,我得到的数量最少。现在我希望能够使用select语句中的值的UPDATE语句从中减去1。

我目前正在计划通过PHP查询表值和通过它们循环来做到这一点。

这可以通过构建一个UPDATE SQL语句直接完成吗?

+1

你的问题不清楚。请添加更多示例数据,并且预期输出 –

+0

已更新该问题。如果您需要更多信息,请告诉我。 – user3980196

回答

2
update your_table 
set quantity = quantity - 1 
where item = (SELECT item FROM your_table ORDER BY quantity LIMIT 1) 
+0

感谢您的回复,但'数量 user3980196