10 我的数据库同时包含空间表和非空间表,但是我只想从查询中检索空间表。 任何仅选择空间表的建议。“ the_geom”是空间表中的几何列。 否则,可以从其列名中选择表。 我尝试使用此代码select relname from pg_stat_user_tables WHERE schemaname='public';但是从中我们得到所有的表名。 postgis postgresql query — 基绍 source
16 所有空间表引用都保存在geometry_columns元数据表中。因此,请尝试: select * from geometry_columns 你应该只得到空间表 — 马波利 source 非常感谢你...我想我错过了一件简单的事情 — Kishor 2012年 2 我得到了另一个代码, SELECT table_name FROM information_schema.columns WHERE column_name = 'the_geom' — Kishor 2012年 yip-这是很长的路要走:-) — mapoholic 2012年 是的,你是对的。 — Kishor 2012年 @kishor,您应该将注释添加为“答案”,以便人们也将其视为一种选择,即使已确定mapoholic的答案可能是首选方法。 — RyanKDalton
2 短路 select * from geometry_columns 更深的路 SELECT table_name FROM information_schema.columns WHERE column_name = 'the_geom' or column_name = 'wkb_geometry' 即使删除了geometry_columns的信息,第二个选项也应该起作用。如果您使用ogr2ogr工具提供数据库,则“ wkb_geometry”是几何数据列的默认名称。 — 豪尔赫·阿雷瓦洛 source
2 另一个只选择数据库中的空间表的表。 SELECT table_name FROM information_schema.columns WHERE column_name = 'the_geom'` 使用此代码,我们还可以通过知道表的列名来检索表信息。 — 基绍 source