2017-10-10 10 views
0

の選択に基づいて挿入、私は、論文の分野私の車のテーブルでは、より汎用的なテーブルにhstoreの(postgreql)から</p> <p>を値を挿入しようとしてhstoreの列

id 
fields (hstore) 

マイストアテーブルを持っています私は論文のフィールドを持っています

id 
key 
value 
car_id 
date 

私のフィールドにループする方法は、私のストアテーブルにキー、値を挿入するプロパティです。

selectコマンドで実行する方法はありますか?

答えて

2

例データ:

insert into car values 
(1, 'brand=>ford, color=>yellow'), 
(2, 'brand=>volvo, mileage=>50000, year=>2015'); 

hstoreの列のペア(key, value)を取得する機能each(hstore)を使用します。

select id, key, value 
from car, each(fields); 

id | key | value 
----+---------+-------- 
    1 | brand | ford 
    1 | color | yellow 
    2 | year | 2015 
    2 | brand | volvo 
    2 | mileage | 50000 
(5 rows)  

insertコマンドは次のようになります。

insert into store (car_id, key, value) 
select id, key, value 
from car, each(fields); 
関連する問題