sum 两张表 mysql,在多个表之间使用sum()结果进行MYSQL更新

This bits working great:

SELECT products_id, sum(attributes_stock)

FROM products_attributes

GROUP BY products_id

Which adds together all the groups of fields in the attributes_stock column.

What I am having trouble with is getting this result to UPDATE another column in another table.

This is what I have:

UPDATE products, products_attributes

SET products.products_quantity = sum(products_attributes.attributes_stock) GROUP BY products_attributes.products_id

WHERE products.products_id = products_attributes.products_id

Any advice greatly appreciated.

解决方案

You can't use a group by inside an update statement. You'll need to use an sub select to do the grouping.

Something like this:

UPDATE products p,( SELECT products_id, sum(attributes_stock) as mysum

FROM products_attributes GROUP BY products_id) as s

SET p.products_quantity = s.mysum

WHERE p.products_id = s.products_id

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值