たとえば、TABLE_A に次のようにデータが入っているとする。
このテーブルに 'Field4' というフィールドを追加してそのフィールドに次のように 'Field3' の値をコピーしたいときの処理にすこし手間取ったのでメモしておく。| Field1 | Field2 | Field3 | | 001 | abcd | 22 | | 001 | dnkda | 34 | | 001 | tsgt | 9 | | 001 | lanhp | 13 |
まず、'Field4' の初期値を決めて、すべての列に初期値を入れておく。今回の場合 '0' をセット。| Field1 | Field2 | Field3 | Field4 | | 001 | abcd | 22 | 22 | | 001 | dnkda | 34 | 34 | | 001 | tsgt | 9 | 9 | | 001 | lanhp | 13 | 13 |
この状態の TABLE_A にたいして以下のSQL文を実行することで解決。| Field1 | Field2 | Field3 | Field4 | | 001 | abcd | 22 | 0 | | 001 | dnkda | 34 | 0 | | 001 | tsgt | 9 | 0 | | 001 | lanhp | 13 | 0 |
update TABLE_A set Field4 = Field3 where Field4 = 0
単純なのに、案外てこずってしまった。。