Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 将gis数据从一个postgis表转换为另一个postgis表以简化的最佳方法_Database_Postgresql_Postgis_Qgis - Fatal编程技术网

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

Database 将gis数据从一个postgis表转换为另一个postgis表以简化的最佳方法,database,postgresql,postgis,qgis,Database,Postgresql,Postgis,Qgis,我已经将许多shapefile转储到postgis数据库中,并将通过QGIS将其用于GIS应用程序。现在,我已经开发了一个数据字典,对于trimble收集数据的最终用户来说,它是明智和直观的。这就是初始表的生成方式,trimble上的最终用户是最优先的。现在,当我在qgis中使用这些收集的数据时,在某些要素类上为选定点显示的属性列并不是很简单 例如,我们是一个管道实用程序,我设置了trimble,这样当他们选择一个标称管道直径时,它会根据管道尺寸为不同的壁厚提供选项。这在trimble上效果很好

我已经将许多shapefile转储到postgis数据库中,并将通过QGIS将其用于GIS应用程序。现在,我已经开发了一个数据字典,对于trimble收集数据的最终用户来说,它是明智和直观的。这就是初始表的生成方式,trimble上的最终用户是最优先的。现在,当我在qgis中使用这些收集的数据时,在某些要素类上为选定点显示的属性列并不是很简单

例如,我们是一个管道实用程序,我设置了trimble,这样当他们选择一个标称管道直径时,它会根据管道尺寸为不同的壁厚提供选项。这在trimble上效果很好,但是我得到了地图中每一条管道的8或9个空白值。因此,如果我选择了一个2英寸的main,属性将显示从3/4英寸到10英寸的每个尺寸的大小和壁厚字段,但唯一有值的是2英寸。我想做的是创建一个新表来简化这个过程,然后从包含trimble生成的数据的表中运行数据,并将其转储到新表中。这不仅需要将数据从db“GIS”中的一个postgres表“Main”导入到我的试用数据库中的一个新表“Main”中,还需要一些代码来搜索a、b、c、d等列,以找到不为空的一个,并将其发送到新表的壁厚列

我有几个属性,几个表都有这些问题,但我认为如果有人能帮助我,或者至少能为我指明正确的方向,我就可以做剩下的事情。这是我的GIS构建的最后一步,在我们准备开始推广之前。如果有人能帮我清理一下,我将不胜感激

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


p、 我为qgis中的“主要”功能添加了现有数据结构的图片,并为命令行中的“主要”功能添加了新表的图片

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

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

由于没有任何管道通常具有两个壁厚值,如果它们之间没有某种类型的过渡焊缝,则此查询将为您获取该管道的实际值,并且不会返回所有空值。

什么意思
Trimble
?我每天都与GIS合作,但不理解您的问题。向我们显示数据库模式、示例数据和预期输出。请阅读,这里是一个学习如何提高问题质量和获得更好答案的好地方。将表格和数据作为文本发布是的,我打开了文件,但不清楚您需要什么。同样,您需要三样东西,源数据、当前输出和期望输出。仅供参考,我不是PostgreSQL或编程专家。我做了很多调查,一直在自学和自学Java、Python和SQL,希望能有一个转行的机会。你似乎做得很好。我也不知道如何将这些查询的值插入到另一个表中。所以,一旦我有了sql语句来检索应该检索的值,我如何将它们放入新的干净表中呢?不用担心,我不在乎是否有人是专业人士。我是一名具有autocad经验的工程师,当我在目前的公司工作时,我开始实施我以前不知道的GIS。我自学了所有与地理信息系统相关的知识,所以我理解。这也可能对你有所帮助。这正是我想要的。谢谢你,先生!