如何在postgresql中找到纬度值并将其保存在另一个table中
How to find the latitude value and save it in another table in postgresql
我有一个 shp 文件,我想获取纬度值并将其存储在另一个 table。
CREATE TABLE Polepoints ( X varchar(50),Y varchar(50),Z varchar(50));
插入操作:
INSERT INTO Polepoints (X) Select ST_X (ST_Centroid(geos)) from mytable
它抛出错误
column X doesn't exist
但列和 table 存在。我是初学者。
问题一定出在其他地方。如果 table Polepoints
确实有一个名为 X
的列,则不应出现此错误(请参见下面的示例)。检查您是否连接到正确的数据库,或者即使真正的 table polepoints
(包含列 X
的数据库)是否处于不同的架构中。
CREATE TABLE Polepoints ( X varchar(50),Y varchar(50),Z varchar(50));
WITH mytable (geos) AS (
VALUES ('POINT(1 1)'),('POINT(2 3)')
)
INSERT INTO Polepoints (X) SELECT ST_X (ST_Centroid(geos)) FROM mytable;
SELECT * FROM polepoints;
x | y | z
---+---+---
1 | |
2 | |
我有一个 shp 文件,我想获取纬度值并将其存储在另一个 table。
CREATE TABLE Polepoints ( X varchar(50),Y varchar(50),Z varchar(50));
插入操作:
INSERT INTO Polepoints (X) Select ST_X (ST_Centroid(geos)) from mytable
它抛出错误
column X doesn't exist
但列和 table 存在。我是初学者。
问题一定出在其他地方。如果 table Polepoints
确实有一个名为 X
的列,则不应出现此错误(请参见下面的示例)。检查您是否连接到正确的数据库,或者即使真正的 table polepoints
(包含列 X
的数据库)是否处于不同的架构中。
CREATE TABLE Polepoints ( X varchar(50),Y varchar(50),Z varchar(50));
WITH mytable (geos) AS (
VALUES ('POINT(1 1)'),('POINT(2 3)')
)
INSERT INTO Polepoints (X) SELECT ST_X (ST_Centroid(geos)) FROM mytable;
SELECT * FROM polepoints;
x | y | z
---+---+---
1 | |
2 | |