PostGIS: подсчитать количество вершин линий и многоугольников в таблицах

14

У меня есть 23 таблицы в схеме PostGIS, для которых нужно подсчитать количество вершин. Таблицы представляют собой смесь линий и многоугольников, поэтому я понял, что мне нужно использовать ST_NPoints (geom)

Итак, я запустил следующий запрос

SELECT count(ST_NPoints(geom) FROM lines;

результат / число равно количеству объектов в этой таблице, а не общему количеству вершин всех объектов в этой таблице.

Я должен что-то упустить, но не могу понять (должно быть утро понедельника;))

tjmgis
источник

Ответы:

27

С помощью вашего запроса вы только подсчитываете количество строк в вашей таблице (смотрите, сколько раз вы вызываете st_npoints), вам нужно суммировать результаты, которые возвращают st_npoints для каждой геометрии

SELECT sum(ST_NPoints(geom)) FROM lines;
Франциско Пуга
источник
Большое спасибо, что работает отлично. Я знал, что это должно быть просто
tjmgis