我可以对两个表进行计算,并将结果添加到其中一个表的特定列中吗?

时间:2011-01-02 12:39:39

标签: mysql database

好的说我有两张桌子产品和销售 该产品包含ID,名称和价格。销售包含总项目,销售物品.. 我想从产品表中获取价格并将其与销售表中的已售商品相乘,并将结果存储在销售表中销售的列数量中。

我该怎么做?使用MySQL和MS SQL Server 2008

2 个答案:

答案 0 :(得分:1)

update Sales 
set `amount-sold` = 
  `sold-items` * 
  (select ifnull(price, 0) 
   from Product 
   where Product.id=Sales.product_id);

答案 1 :(得分:0)

提取数据:

SELECT p.`price`,s.`sold-items` FROM `product` AS p INNER JOIN `sales` AS s ON s.`id`=p.`id` WHERE p.`id` = 123

将查询结果存储在变量中,然后进行乘法,然后重新插入数据。

UPDATE `sales` SET `amount-sold` = {NEW VALUE} WHERE `id` = 123