Mysql查询。更新,乘法,加入和选择(?)全部放在一起

时间:2012-02-29 22:54:47

标签: mysql select join operators

我在编写SQL查询时遇到问题,我希望有人可以帮助我。 这是我想要查询的内容:

  1. 从“产品”表格中获取“prod_value”列
  2. 将常数(假设数字2)乘以“值”表上的“值”列,该值对应于值< - >之间的一对一关系。产品
  3. 将“product”表中的“prod_value”列更新为新的更新值。
  4. 例如...... 这是表格: 值

      id     |      worth       |     product_id     |
       1     |         10       |         1          |
    

    产品(之前)

       id    |     name        |        prod_value    |
       1     |    product1     |           100        |
    

    并假设常数= 2.

    然后我运行查询后想要的是:

    产品(之后)

       id    |     name        |        prod_value    |
       1     |    product1     |           120        |
    

    120来自100(前一个值)+ 2 * 10

    我希望通过一个查询完成此操作,这是否可能? 如果有人能帮助我,我将非常感激! 谢谢:))

1 个答案:

答案 0 :(得分:3)

UPDATE `product`
INNER JOIN `value` ON `product`.`id`= `value`.`product_id`
SET `product`.`prod_value` = `product`.`prod_value` + 2* `value`.`worth`