ブック(B_IDはPK)乗算2つの異なるテーブルからの値と新しいテーブルに結果を格納
| B_ID | Name | Unit_Price|
|------+---------+-----------|
| B01 | Math | 25 |
| B02 | Science | 34 |
注文(O_IDがPKである)
| O_ID | Date | Total_Price |
|------+---------+-------------|
| O01 | 12/1/16 | NULL |
| O02 | 20/3/16 | NULL |
注文Detais(O_ID、B_IDはコンポジットPKであり、両方のIDが上記の表に対してFKです)
| O_ID | B_ID | Quantity |
|------+------+-----------|
| O01 | B01 | 2 |
| O01 | B02 | 1 |
| O02 | B02 | 5 |
Total_Price
(Unit_Price
* Quantity
)に計算を挿入するには、NULLを計算結果に置き換えます。私はCTEを使って解決しようとしましたが、新しいレコード(Exp:O03)が追加されたときにCTEを再度実行して更新する必要があるのは嫌です。 @Damienによってコメントに続き
計算値を保存すると、保存され計算された値が元の基本データと矛盾する機会が*導入*されます。理想的には、オンデマンドでの計算(必要に応じてロジックをビューに入れる)が不十分であることが証明されるまで、またはその値が格納されないようにしてください。 *次に*値を格納することを検討しますが、可能であれば、データベースシステムがその値を自動的に保持していることを確認するために、再計算を覚えておく必要はありません。 –