www.map-info.ru :: Просмотр темы - SQL запрос (параллельные линии)
                               РќР° главную страницу сайта

 
                                
ВходВход    РегистрацияРегистрация    ПрофильПрофиль    ПользователиПользователи    ГруппыГруппы    FAQFAQ    ПоискПоиск  

 
   Список форумов www.map-info.ru | Форум - ГИС 'MapInfo' Добавить ответ
Предыдущая тема :: Следующая тема  
Автор Сообщение
winsent



Зарегистрирован: 13.03.2008
Сообщения: 3

СообщениеДобавлено: Чт Мар 13, 2008 4:07 am    Заголовок сообщения: SQL запрос (параллельные линии) Добавить ответ со ссылкой на данный текст

Добрый день, возникла такая проблемма:
при объединении 2х таблиц возникли дубли линий, они не пересекаются, а находятся оч. рядом друг с другом.

Поэтому возникла необходимость выбрать линии которые находятся на определенном растоянии друг от друга.

По наивности пробывал с таким условием:
Код:
distance ( CentroidX ( old.obj ) , CentroidY ( old.obj ) , CentroidX (new.obj ) , CentroidY ( new.obj ) , "m" ) < 00,1 

непомогло.) И уже понял почему: Центроид и линия - понятия несовместимые.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Андрей Могильный



Зарегистрирован: 21.03.2006
Сообщения: 864

СообщениеДобавлено: Чт Мар 13, 2008 10:46 am    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Строй буферную зону вокруг объекта нового слоя размером 0.01, проверяй на пересечение с объектом старого слоя. Запрос сам напишешь?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
winsent



Зарегистрирован: 13.03.2008
Сообщения: 3

СообщениеДобавлено: Чт Мар 13, 2008 11:07 am    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Андрей Могильный писал(а):
Строй буферную зону вокруг объекта нового слоя размером 0.01, проверяй на пересечение с объектом старого слоя. Запрос сам напишешь?
Да, написал. Спасибо,Андрей.
Вот только подскажите еще такой момен, можно ли делать запрос на выборку из трех таблиц
Код:
SELECT * FROM old, buff, new WHERE buff.Obj Intersects new.obj AND old.Dlina=new.Dlina_c

Мне почему-то говорит, что неправильно задано условие объединения (WHERE)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Нестеров Валерий



Зарегистрирован: 21.03.2006
Сообщения: 492

СообщениеДобавлено: Чт Мар 13, 2008 9:40 pm    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Надо написать так:
SELECT * FROM buff, new WHERE buff.Obj Intersects new.obj AND new.Dlina_c IN (SELECT old.Dlina FROM old)
_________________
Жизнь прекрасна!i
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Василий Дорога



Зарегистрирован: 27.09.2018
Сообщения: 1

СообщениеДобавлено: Чт Сен 27, 2018 11:43 am    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Добрый день, помогите новичку. Как написать sql запрос, чтобы построить буферную зону для участков.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
   Список форумов www.map-info.ru | Форум - ГИС 'MapInfo' Добавить ответ
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Top.Mail.Ru