如何使用if条件更新我的mysql数据库

时间:2014-08-05 11:03:21

标签: mysql sql

我的数据库中有两个表。第一个表格用于存储发票明细,第二个表格用于根据发票ID存储发票项目。

<html>
<body>
<p>1.Table 1 Invocies</p>
<table border='1'>
<tr><td>ID</td><td>Customer Id</td><td>Amount</td><td>Date</td></tr>
<tr><td>1</td><td>1</td><td>1500</td><td>2014-08-05</td></tr>
<tr><td>2</td><td>2</td><td>500</td><td>2014-08-05</td></tr>
<tr><td>3</td><td>1</td><td>500</td><td>2014-08-05</td></tr>
<tr><td>4</td><td>1</td><td>600</td><td>2014-08-05</td></tr>
<tr><td>5</td><td>2</td><td>700</td><td>2014-08-05</td></tr>
</table>
<p>1.Table 2 Items</p>
<table border='1'>
<tr><td>ID</td><td>ProductId</td><td>Price</td><td>Invoice Id</td><td>Quantity</td></tr>
<tr><td>1</td><td>2</td><td>800</td><td>1</td><td>1</td></tr>
<tr><td>2</td><td>1</td><td>800</td><td>1</td><td>1</td></tr>
<tr><td>3</td><td>2</td><td>500</td><td>2</td><td>1</td></tr>
<tr><td>4</td><td>2</td><td>500</td><td>3</td><td>1</td></tr>
<tr><td>5</td><td>2</td><td>600</td><td>4</td><td>1</td></tr>
</table>
</body>
</html>

对于发票ID 1,我们有两个产品,数量和数量之和价格= 1600但在表1中金额为1500.我想更新所有表格1的金额等于数量和的总和。产品价格基于其发票ID。如何为此编写查询?

1 个答案:

答案 0 :(得分:0)

这应该这样做:

UPDATE Table1 SET Amount = (SELECT SUM(Price) FROM Table2 WHERE Table1.ID = Table2.InvoiceID);