Выберите строки в таблице (postgis) из выбранных функций QGIS - PullRequest
0 голосов
/ 18 октября 2018

Как выбрать строки в таблице на основе ключа (PK) из другой таблицы.Я выбрал несколько полигонов, которые находятся в географической области из одного слоя.

Таблица атрибутов из выбранного слоя выглядит следующим образом:

| Bloknr | Column 1 | Column 2 | Column 3 |
| 111-08 | xqyz     | xyzq     | qxyz     |
| 208-09 | abc      | cba      | bca      |

Где выбрана соответствующая строка (строка 1).

Теперь я хочу выбрать этострока из негеографического слоя (из базы данных postgresql) с таблицей, которая выглядит следующим образом:

| BLOKNR | Column 1  | Column 2  | Column 3  |
| 111-08 | cab       | bac       | cab       |
| 208-09 | abc       | cba       | bca       |
| 111-08 | cba       | bca       | cab       |

Где выбирается первая и третья строка.

В таблице postgres содержится около 20 000 000 строк и несколько совпадений для каждого блока

Я работаю в qgis ver. 3.2 и postgresql with PGadmin4

Любая помощь наиболее ценится.

ОБНОВЛЕНИЕ, чтобы ответить на комментарии

Было бы просто, если бы это было сделано в postgres - это как-то сделано для этого - но я не могу понять, как сделать запрос в qgisя не хотел бы экспортировать каждую таблицу (у меня есть несколько, и для каждой мне нужно несколько запросов выбора, основанных на географии) в postgresql - частично потому, что я хотел бы сохранить рабочий процесс в qgis, и частично, потому что функция экспортав менеджере БД qgis выдает мне эту ошибку - что, я думаю, означает, что я должен сделать все таблицы вручную.

"ОШИБКА: функция addgeometrycolumn (неизвестно, неизвестно, неизвестно, целое, неизвестно, целое число) не существует ЛИНИЯ 1: SELECT AddGeometryColumn ('public', 'Test', NULL, 0, 'MULTIPOLYGO...

СОВЕТ: ни одна функция не соответствует заданному имени и типу аргумента. Возможно, вам понадобится добавить явное приведение типов. "

Итак, любая помощь приветствуется.

1 Ответ

0 голосов
/ 19 октября 2018

Итак, я пришел с ответом, который будет работать в теории.

Сначала сделайте желаемый географический выбор и создайте новый слой с выбором

  • Затем экспортируйте слой в базу данных postgis, с которой вы связаны. Теперь можно выполнять запросыв postgresql - и PGadmin.

Обратите внимание, что это не сохраняет рабочий процесс в qgis - и для дальнейшей обработки статистики и т. Д. Нужно будет поработать над интеграцией между новым слоем postgis и выбором внутри него - и это не так.Т вполне решить географический / картографический подход выбора - хотя это будет работать

...