[pgsql-jp: 34263] Re: 同一テーブル内での列コピー
矢内原 契
kei @ easylife.co.jp
2004年 11月 11日 (木) 23:26:59 JST
矢内原@イージーライフです。
以下のようなSQLじゃダメですか?
update test set date2=date1 where date2 is null;
> こんばんは。
> 島田と申します。
>
> test --- pk(id,name), date1(not null)
>
> id name date1 date2
> -----------------------------
> 1 a 2004/10/1 2004/11/1
> 2 a 2004/12/1
> 3 b 2005/1/1 2005/2/1
> 4 c 2005/2/1
>
> 〜〜〜 snip 〜〜〜
>
> 上記のようなテーブルがあり、date2がNULLの時には、
> date1の値をそのままdate2に移行したいと思っています。
> レコード数は2万ほどあり、極端に時間のかかる処理(5分以上)はNGです。
>
> 実は、SQLで簡単にできればそうしたいですし、
> プロシージャでも工夫をすれば、負荷をかけずにスマートにできるということであればそうしたいと思っています。
> もし、いずれも駄目な場合には、PHPでファイルに落として、\COPYを絡めて、
> やっていこうと思っています。
>
> スマートで簡単な方法があるようでしたらば、教えて頂けたらと思います。
pgsql-jp メーリングリストの案内