次の列を含むデータベースがあります。
key arg1 arg2 arg3 timebegin timeend
#1 a b c 1942-06-18 05:30:00+05:30 1945-06-18 05:30:00+05:30
#2 d e f 1940-10-09 05:53:20+05:53:20 1948-10-09 05:53:20+05:53:20
#3 w x y
キーのタイプ arg1、arg2、arg3 は文字可変 (255) であり、timebegin と timeend のタイプはタイムゾーン付きのタイムスタンプです。
ここで、リレーショナル テーブルを以下の形式に変換します。
<1> <a> <b> <c> //key,arg1,arg2,agr3
<2> <d> <e> <f>
<3> <w> <x> <y>
<1> <a> <b> 1942-06-18 05:30:00+05:30 //With columns containing time attributes just key, arg1, arg2, timebegin are copied.
<1> <a> <b> 1945-06-18 05:30:00+05:30
<1> <d> <e> 1940-10-09 05:53:20+05:53:20
<1> <d> <e> 1948-10-09 05:53:20+05:53:20
SQL を使用してリレーショナル テーブルを上記の形式に変換することは可能ですか。リレーショナル テーブルの内容を csv 形式にダンプできることは知っています。しかし、リレーショナル テーブルの内容を上記の指定された形式に変換することも可能ですか。私のデータベースはpostgres 9.1です
**
*> 編集: ルール:
1. 最初にすべての行から key、arg1、arg2、arg3 がコピーされ、次に 2. NOT NULL timebegin および timeend 値を含むすべての行について: key,arg1,arg2,timebegin および key,arg1,arg2,timeend がコピーされます*
**
注: "<>" が配置されているかどうかは問題ではありません。