Symfoware Server SQLビギナーズガイド - FUJITSU - |
目次 索引 |
第3章 データを変更する方法 | > 3.2 データベースのデータを更新する |
表のすべての行を更新するには、探索条件を省略します。もちろん、キーワードの“WHERE”も指定しません。
“図:別の列の値を使用した更新の例”で説明した例を思い出してください。この例では、出荷データが発生したときに、出荷数量と前回出荷の値を更新しました。しかし、その増減は設定していませんでした。ここで、増減の値を最新の状態に更新することにします。この例を以下に示します。
例
出荷表のすべての行について増減の値を、出荷数量から前回出荷を引いた値で更新します。
UPDATE 在庫管理.出荷表 SET 増減 = 出荷数量 - 前回出荷 ↑ | WHEREは指定しません。
備考.値が変わらない行についても元と同じ値に更新しています。
この例では、すべての行について増減の値を更新していますが、前回の更新後に、出荷データが発生していない行については、実際の値は変わりません。この行についてもデータの更新は行われています。すなわち、元の値と同じ値に更新しているのです。表全体の行数に対して、このような行の比率が大きい場合には、なんらかの方法で更新が必要な行を管理して、必要な行だけを更新した方が効率がよくなります。
目次 索引 |