Страница 1 из 1

MapServer + PostGIS, вывод атрибутивной таблицы

Добавлено: 08 сен 2016, 07:20
nemeia
Добрый день! Имеется 2 таблицы в postgis, одна содержит в себе геометрию, другая различную текстовую атрибутивную информацию. Связаны они между собой по ключу - id. Вопрос такой: можно ли вывести геометрию из первой таблицы, а инфу (через getfeatureinfo OL3) из второй, опираясь на id точки?
Из одной и той же таблицы все выводится прекрасно - и геометрия, и инфа. А как выдернуть инфу из другой - не могу сообразить... :oops: :cry:

Re: MapServer + PostGIS, вывод атрибутивной таблицы

Добавлено: 08 сен 2016, 08:07
Denis Rykov
Самый простой вариант — сделать view, объединяющее эти две таблицы и уже его подключать в MapServer.

Re: MapServer + PostGIS, вывод атрибутивной таблицы

Добавлено: 08 сен 2016, 09:03
nemeia
Denis Rykov писал(а):Самый простой вариант — сделать view, объединяющее эти две таблицы и уже его подключать в MapServer.
такой вариант не подходит - есть такое, что одному id соответствует несколько записей в другой таблице. т.е может выводиться не одна строчка

Re: MapServer + PostGIS, вывод атрибутивной таблицы

Добавлено: 08 сен 2016, 09:30
Denis Rykov
Тогда напишите небольшое приложение, которое будет реализовывать нужную логику, MapScript в помощь.

Re: MapServer + PostGIS, вывод атрибутивной таблицы

Добавлено: 08 сен 2016, 09:51
nemeia
Denis Rykov писал(а):Тогда напишите небольшое приложение, которое будет реализовывать нужную логику, MapScript в помощь.
А по-другому все таки никак, да? :(

Re: MapServer + PostGIS, вывод атрибутивной таблицы

Добавлено: 08 сен 2016, 12:31
Denis Rykov
Как вариант можно сделать следующим образом:

Код: Выделить всё

DATA    "geom from (select g.id,
                           g.geom as geom,
                           string_agg(a.display_name, E'\n') as display_name
                    from report g
                    inner join report_photo a on g.id = a.report_id
                    group by g.id) as subquery
                    using unique id using srid=4326"
Идея понятна?

Re: MapServer + PostGIS, вывод атрибутивной таблицы

Добавлено: 13 сен 2016, 07:11
nemeia
Denis Rykov писал(а):Как вариант можно сделать следующим образом:

Код: Выделить всё

DATA    "geom from (select g.id,
                           g.geom as geom,
                           string_agg(a.display_name, E'\n') as display_name
                    from report g
                    inner join report_photo a on g.id = a.report_id
                    group by g.id) as subquery
                    using unique id using srid=4326"
Идея понятна?
Да, огромное спасибо вам за помощь!