Я новичок в PostgreSQL, так что несите меня.Почему я не могу добавить одно значение ко всему столбцу PostgreSQL PostGIS?
У меня есть две таблицы, одна из которых называется «polys» с несколькими полигонами, а другая называется «ящик», которая содержит только один многоугольник (моя ограничивающая рамка). Мой запрос выбирает все полигоны в «polys», которые попадают в рамку «box». Это клип, если хотите. Обе таблицы имеют два столбца, один из которых содержит их идентификаторы, а другой - их GeoJSON, называемый «the_geom».
Что я хочу - это один столбец, содержащий идентификаторы полигонов, которые попадают в ограничительную рамку, другой столбец с GeoJSON с этими многоугольниками, называемый «the_geom_webmercator», другой называется «polygonarea» с каждой областью полигона, а затем другой столбец «totalarea» ", который содержит ТО ЖЕ ТОЧНОЕ ЗНАЧЕНИЕ для каждого многоугольника (значение представляет собой сумму всех полигонов). Однако просто запрос SUM не будет работать, так как это возвращает только 1 значение. Вместо этого я хочу, чтобы это значение заполнило весь столбец. Ниже я попытался; «SUM ... AS» - это часть, о которой идет речь.
SELECT polys.id, ST_Transform(ST_Intersection(polys.the_geom, box.the_geom),3857)
AS the_geom_webmercator,
ST_Area(ST_Transform(ST_Intersection(polys.the_geom,box.the_geom),3857))
AS polygonarea,
SUM(ST_Area(ST_Transform(ST_Intersection(polys.the_geom,box.the_geom),3857)))
AS totalarea FROM polys,box
Работает с предлагаемым кодом. Большое спасибо. – John