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

Пространственный запрос

Добавлено: 29 сен 2021, 19:00
Cube205
Есть таблица с полигонами. В этой таблице есть полигон с колонкой "название" и соответственно каким-то названием. В этой же таблице есть полигоны с той же колонкой но без названия, которые касаются первого полигона. Можно ли создать sql запрос, чтобы была выборка тех полигонов без значения, которые касаются именованного полигона? Проблема в том как описать именованный полигон в запросе

Re: Пространственный запрос

Добавлено: 29 сен 2021, 19:23
trir

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

select t1.id, t1.geom, t1.name, t2.id, t2.geom
from tbl as t1, tbl as t2
where t2.geom.STTouches(t1.geom)=1 and t2.name is null

Re: Пространственный запрос

Добавлено: 29 сен 2021, 20:18
Cube205
Спасибо, но честно сказать не пока вкуриваю, думал, что проще. Не могу осмыслить, что такое id и geom, тем более если в таблице 1 колонка, sttouches неизвестный мне оператор, я думал что нужно трансформировать что то подобное:
select table1.name table2.name
from table1, table2
where table1.obj Insects table2.name = "name"
и вот вся проблема в названии этого конечного полигона, как его правильно записать

Re: Пространственный запрос

Добавлено: 29 сен 2021, 21:28
trir
через and

Re: Пространственный запрос

Добавлено: 29 сен 2021, 22:12
Cube205
То есть?

select *
from гидрография, гидрография
where гидрография.obj Intersects гидрография.obj and Название = "name"

"неправильно задано условие обьединения в условном предложении (where)

Re: Пространственный запрос

Добавлено: 29 сен 2021, 23:07
Cube205
Благодарю, все заработало, разобрался.