我的数据库中有两个表 (A,B)。 现在我将创建一个新的表 C,它来自与表 B 相同的列。我想将表 B 中的所有数据写入新表 C 中的表 A 内的几何图形!
类似于:
CREATE TABLE "C" (ID2 serial PRIMARY KEY, "geom" geometry, "id" bigint, "Name" varchar, "Feature" int, "ID2" bigint, "Code_1" varchar, "Wert_1" varchar, "Code_2" varchar, "Wert_2" int);
INSERT INTO C (geom)
SELECT ST_Intersection (A.geom, B.geom)
From A, B
结果是一个表格,其中包含相交后的几何图形。 此外,我还需要其余数据(id、名称...)
最佳答案
另一种选择是:
CREATE TABLE tableC (LIKE tableB INCLUDING ALL);
INSERT INTO tableC
SELECT b.* FROM tableB b
JOIN tableA ON NOT ST_IsEmpty(ST_Intersection (A.geom, B.geom));
这将为您创建所有索引和键。
关于sql - 从另一个表创建表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42139019/