将 gis 数据从一个 postgis table 转换为另一个以简化的最佳方法

Best way to convert gis data from one postgis table to another for simplification

我已经将大量 shapefile 转储到 postgis 数据库中,并将通过 QGIS 将其用于 GIS 应用程序。现在,我已经开发了一个数据字典,它对 trimble 采集数据的最终用户来说是明智和直观的。这就是初始 table 的生成方式,Trimble 上的最终用户是重中之重。现在,当我在 qgis 中使用这些收集的数据时,在某些特征 类 上显示 selected 点的属性列并不是很简化。

例如,我们是一家管道公用事业公司,我设置了 trimble,这样当它们 select 公称管道直径时,它会根据该管道尺寸提供不同壁厚的选项。这在 trimble 上效果很好,但随后我为地图中的每根管道获得 8 或 9 个空白值。因此,如果我 select 一个 2" 主管,属性显示从 3/4" 到 10" 的每个尺寸的尺寸和壁厚字段,但唯一有值的是 2"。我想做的是创建一个新的 table 来简化这个,然后 运行 来自 table 的数据包含 trimble 生成的数据,并将其转储到新的 table。这不仅需要将数据库 "GIS" 中的一个 postgres table "Main" 中的数据导入到我的试用数据库中的新 table "Main" 中,而且还将需要一些代码来搜索 a b c d 等列以找到不为空的那一个,并将其发送到新的 table 的 Wall Thickness 列。

我有几处房产,还有几处 table 存在这些问题,但我认为如果有人可以提供帮助或至少为我指明在这种特殊情况下的正确方向,我可以完成剩下的工作他们。在我们准备开始推出之前,这是我的 GIS 构建的最后一步,如果有人能帮助我稍微清理一下,我将不胜感激。

我有 pgadmin 4,qgis 2.18,一些关于 SQL 的知识,可以从命令行操作数据,我看到 qgis 有一个内置的 python 控制台,可以帮助。我知道 python 一点,如果最好的路线是通过它,我可能会通过。关于我自己的一些信息可以帮助你们确定我的最佳路线。再次感谢!

p.s。我已经为 qgis 中的 "Main" 功能添加了我现有数据结构的图片,以及我想在命令行中为 "Main" 功能填充的新 table 的图片。 http://imgur.com/a/bkUqS

我本人是一名管道测量员,后来成为自学成才的程序员。所以我希望我理解你困境的第一部分。每根管子可以有不同的壁厚值。示例:主管线管道为 0.250,对于厚壁管道,所有道路钻孔和 HDD 管道的壁厚为 0.300。 在您对您首先拥有的 'raw' 字段数据的查询中,您可以尝试类似

SELECT * 
FROM your_table
WHERE wall_thickness_value IN (0.250,0.300)

由于管道通常不会有两个壁厚值,希望它们之间没有某种类型的过渡焊缝,因此此查询将为您获取该管道的实际值,而不是 return 所有空值.