我需要确定几何列的类型并使用以下查询来完成:
SELECT type
FROM geometry_columns
WHERE f_table_schema = 'public'
AND f_table_name = 'table_name'
AND f_geometry_column = 'col_name'
它适用于常规几何图形,例如点或多边形。但也有一些花哨的几何形状,比如 PointZ。如何确定列是否有它?上面提到的查询只返回 POINT 。
该
geometry_columns
视图会小心删除任何 Z/M 后缀。您可以直接在系统表中查找 PostGIS 类型修饰符:
(同样可以用
postgis_typmod_srid()
.)我发现
geometry_columns
将维度信息存储在另一列中 -coord_dimension
:它甚至更好,因为它直接包含许多维度!