子查询返回多行

时间:2017-06-05 21:40:36

标签: php mysql

我在php中构建销售点软件

因此,我已将购物车中的商品保存在名为tempsales的临时表中,然后使用新数量更新所有商品数量。只需一个查询,使用下面给出子查询的代码,返回:

  

多行错误

UPDATE items SET quantity = quantity -
    (SELECT quantity FROM tempsales ORDER BY id ASC) 
WHERE id  IN 
    (SELECT id FROM ORDER BY I'd ASC)

1 个答案:

答案 0 :(得分:0)

看起来您希望根据items表中的行更新tempsales表中的所有行。我想你想匹配id值。这需要在JOIN查询中使用UPDATE语法,如下所示。

   UPDATE items
     JOIN tempsales ON items.id = tempsales.id
      SET items.quantity = items.quantity - tempsales.quantity