将带有多边形的CSV文件插入PostgreSQL

时间:2018-08-08 21:45:50

标签: postgresql csv geometry gis polygon

我有一个CSV文件,其中包括3列,分别称为边界,类别和城市。 每个单元格中“边界”列下方的数据都由以下内容组成:

{"coordinates"=>[[[-79.86938774585724, 43.206149439482836], [-79.87618446350098, 43.19090988330086], [-79.88626956939697, 43.19328385965552], [-79.88325476646423, 43.200029828720744], [-79.8932647705078, 43.20258723593195], [-79.88930583000183, 43.211150250203886], [-79.86938774585724, 43.206149439482836]]], "type"=>"Polygon"}

如何为“边界”列创建具有正确数据类型的表?

1 个答案:

答案 0 :(得分:0)

您指定的数据为JSON格式,因此您可以将boundaries数据存储为jsonb表列。 例如:CREATE TABLE cities ( city varchar, category varchar, boundaries jsonb)

另一种方法是解析JSON并将坐标存储在PostgreSQL ARRAY列中:

CREATE TABLE cities (
    city varchar,
    category varchar,
    boundary_coords point ARRAY,
    boundary_type varchar
)