Страница 1 из 1
					
				MapServer + PostGIS, вывод атрибутивной таблицы
				Добавлено: 08 сен 2016, 07:20
				 nemeia
				Добрый день! Имеется 2 таблицы в postgis, одна содержит в себе геометрию, другая различную текстовую атрибутивную информацию. Связаны они между собой по  ключу - id. Вопрос такой: можно ли вывести геометрию из первой таблицы, а инфу (через getfeatureinfo OL3) из второй, опираясь на id точки? 
Из одной и той же таблицы все выводится прекрасно - и геометрия, и инфа. А как выдернуть инфу из другой - не могу сообразить... 
 
  
 
			
					
				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"
Идея понятна?
 
Да, огромное спасибо вам за помощь!