mapfeatures_20120813
約 1000 行の 2 列 (タグと pky) を持つpostgres テーブル ( ) があります。各行はhstore
と 主キーで構成されます。
tags (hstore) pky
"aerialway"=>"cable_car"; 1
"aerialway"=>"chair_lift"; 2
"aerialway"=>"drag_lift"; 3
"aerialway"=>"gondola"; 4
"aerialway"=>"goods"; 5
"aerialway"=>"mixed_lift"; 6
"aerialway"=>"pylon"; 7
"aerialway"=>"station"; 8
"aeroway"=>"aerodrome"; 9
"aeroway"=>"apron"; 10
...
分析のために、これらすべての単一の hstore キーと値のペアを単一の hstore -row にプッシュする必要がありますが、これを解決する方法がわかりません。
したがって、最初にすべての行を単一行のテキスト フィールドに変換します。
CREATE TABLE mf_text AS
SELECT array_to_string(array_agg(tags), ',')
FROM mapfeatures_20120813;
2 番目のステップhstore
では、このテキスト フィールドから を作成します。
SELECT hstore(array_to_string)
FROM mf_text
しかし問題は、1000 を超えるキーと値のペアのうち 97 のみが新しい hstore-field に書き込まれることです。また、結果にパターンが見られません。完全に混同されています。
"atv"=>"no", "hgv"=>"forestry", "lit"=>"no", "psv"=>"private"
, "area"=>"yes", "boat"=>"permissive"
hstore
単一のフィールドに収まるキーと値のペアの数について、フィールドに何らかの制限がありhstore
ますか? ドキュメントには何も書かれていません。