对两个表中的值进行一些计算,并将其存储在一个表中

时间:2016-03-21 15:58:20

标签: mysql sql database

第一个表名:table1

| email           | value  |
----------------------------
| abc@gmail.com   |0.12      |
| dsv@gmail.com   |0.23      |
| rthgmail.com    | 0.45     |
| hfg@gmail.com   |0.56      |
| yyt@gmail.com   | 0.78     |
| hjg@gmail.com   | 0.35     |

第二个表名:table2

| email           | result |
----------------------------
| abc@gmail.com   |0.3      |
| dsv@gmail.com   |0.6      |
| rthgmail.com    | 0.7     |
| hfg@gmail.com   |0.8      |
| yyt@gmail.com   | 0.1     |
| hjg@gmail.com   | 0.3     |

现在,我想执行这个数学运算

value(table1) = result(table2)+value(table1) /2

for email =" abc@gmail.com"

我想使用UPDATE查询。

谢谢!!!

1 个答案:

答案 0 :(得分:1)

您可以使用与join中相同的方式更新select个表:

UPDATE table1
JOIN table2 ON table1.email=table2.email
SET table1.value = (table2.result + table1.value) / 2
WHERE table1.email = "abc@gmail.com"