Я очень новичок в PostGIS, PostgreSQL и SQL в целом.
У меня есть 44 таблицы в моей базе данных PostGIS, и каждая из них представляет отдельный слой векторных данных. Каждый был загружен из отдельного шейп-файла, и у каждого есть столбец, который описывает геометрию для этого слоя, называемыйwkb_geometry
Я хочу выбрать конкретный многоугольник на одном слое, а затем извлечь ВСЕ геометрию из поднабора слоев, которые перекрывают ограничивающий прямоугольник этого многоугольника. Я не чувствую придирчивости к выходу заказа, но было бы полезно, если бы он был организован по таблицам, из которых пришла каждая группа геометрии.
Вот пример моего оператора SQL:
SELECT
ST_AsEWKT(wkb_geometry) /* Some of this data has z values, hence the EWKT */
FROM
table2, table3, table4, table5
WHERE
wkb_geometry &&
(
SELECT
wkb_geometry
FROM
table1
WHERE
ogc_fid = 25
);
который возвращает ошибку:
column reference "wkb_geometry" is ambiguous
/* note that every table that I am selecting from has a "wkb_geometry" column */
Как правильно это сделать?