关于UPDATE的SQL语法问题。通过给下面的例子来问这个问题它会容易得多:SQL语法问题
**Payments Table**
ID user_id payment_due payment_made
1 3 10.0 5.0
1 3 10.0 10.0
1 9 20.0 20.0
**Balance Table**
ID user_id current_balance
1 3 ???
2 9 ???
让我们说,我想更新针对特定用户的当前余额。什么是正确和有效的SQL语法来添加所有付款费用并从为特定用户所做的所有付款中扣除它?
在这种情况下,CURRENT_BALANCE用户 '3' 是5.0和用户 '9' 为0.0
这可能是最好的方法。由于余额会不断变化,因此不要保留“余额”表。你甚至可以把这个查询变成一个视图,以便它的行为像'Balance'表。 – cmptrgeekken 2010-03-03 18:39:31
或使用触发器保持数据同步。 – 2010-03-03 18:47:03
如上所述不保留一个余额表......存储计算字段(current_balance)打破了规范化的规则,使用查询来即时获取数据 – Leslie 2010-03-03 18:53:23