PostgreSQL: добавление городов в точки с помощью ST_Contains ()

У меня есть таблица с 2 столбцами:

-geom : (Lat/lang pairs in this from) ST_SetSRID(ST_MakePoint(longg,lat),4326)

-city : an empty column

У меня есть импортированный файл формы из страны (в виде таблицы с многоугольниками), и я хотел бы добавить каждую геометрическую точку точного города в столбец города с помощью ST_Contains().

Для каждой геометрической точки проверьте каждый многоугольник города и, если это внутренняя точка, добавьте название города в столбец города.

Q: Как я могу сделать эту структуру (вложенный цикл)?


person Boppa    schedule 28.03.2013    source источник


Ответы (1)


Нормальный UPDATE FROM должен работать. Предположим, что таблицы shp содержат столбцы city_geom и city_name.

UPDATE tbl
SET city=s.city_name
FROM shp AS s
WHERE
ST_CONTAINS(s.city_geom,geom);
person Jakub Kania    schedule 29.03.2013