Запрос в Mapinfo

MapInfo, MapBasic
Sibit
Активный участник
Сообщения: 216
Зарегистрирован: 21 окт 2009, 13:29
Репутация: 28
Откуда: Новосибирск

Re: Запрос в Mapinfo

Сообщение Sibit » 02 авг 2012, 09:46

Foxxxy писал(а):Sibit, что неправильно заполнила? См. вложение. Выдает ошибку: Не определена переменная или поле part_01.Obj. Help!!!! Спасибо.
А, пробел между part и _01.Obj забыл :) Вместо "part_01.Obj" поставить "part _01.Obj"
SergS писал(а):intersects все таки годится, т.к. касание точкой имеет нулевую площадь перекрытия
В принципе да, но зачем их выбирать?
SergS писал(а):а contains все таки не годится,
contains не годится, а вот contains part годится :)

Foxxxy
Участник
Сообщения: 95
Зарегистрирован: 01 авг 2012, 09:15
Репутация: 1
Откуда: г. Санкт-Петербург

Re: Запрос в Mapinfo

Сообщение Foxxxy » 02 авг 2012, 09:48

SergS, спасибо!
Еще пара вопросов, если можно. Как посмотреть в каких единицах идет подсчет площади и как точность уменьшить до 2 знаков после запятой. Спасибо!

Foxxxy
Участник
Сообщения: 95
Зарегистрирован: 01 авг 2012, 09:15
Репутация: 1
Откуда: г. Санкт-Петербург

Re: Запрос в Mapinfo

Сообщение Foxxxy » 02 авг 2012, 10:02

Sibit, может Вы подскажете? Мой спаситель! Спасибо

SergS
Активный участник
Сообщения: 120
Зарегистрирован: 14 апр 2011, 13:24
Репутация: 5
Откуда: Екатеринбург

Re: Запрос в Mapinfo

Сообщение SergS » 02 авг 2012, 10:06

как посмотреть? -не знаю, наверное зависит от версии MI, сам никогда не смотрел, а всегда устанавливал принудительно. типа в окне mb написать -
set area units "sq m",
или
set area units "hectare"

на счет округления.
опять таки не знаю как в последних версиях MI- у меня на 8.0 вот такой оператор не пройдет:
round(sum(areaoverlap(...),0.01)
а вот такой выполняется нормально (учитываем, что складываются уже округленные площади, чт не всегда есть хорошо):
sum(round(areaoverlap(...),0.01))

Sibit
Активный участник
Сообщения: 216
Зарегистрирован: 21 окт 2009, 13:29
Репутация: 28
Откуда: Новосибирск

Re: Запрос в Mapinfo

Сообщение Sibit » 02 авг 2012, 10:12

у меня в квадратных метрах, а вообще Настройки/режимы/системные и там выбрать что нужно.
Уменьшить точность - Round(значение,0.01) т.е вставить это или в сам запрос перед функцией AreaOverlap или еще один запрос к таблице с результатом первого запроса, и в нем обновить колонку.
написать -
set area units "sq m",
Можно и так, но сработает только если запрос сделать сразу, если после этого слазить в настройки, то значение единиц станет из настроек.


PS А еще посмотрите документацию к Mapinfo там запросы довольно толково объяснены

SergS
Активный участник
Сообщения: 120
Зарегистрирован: 14 апр 2011, 13:24
Репутация: 5
Откуда: Екатеринбург

Re: Запрос в Mapinfo

Сообщение SergS » 02 авг 2012, 10:14

Sibit писал(а):contains не годится, а вот contains part годится
это все из-за
Sibit писал(а):А, пробел между part и _01.Obj забыл
:D :D

SergS
Активный участник
Сообщения: 120
Зарегистрирован: 14 апр 2011, 13:24
Репутация: 5
Откуда: Екатеринбург

Re: Запрос в Mapinfo

Сообщение SergS » 02 авг 2012, 10:20

Sibit писал(а):Настройки/режимы/системные и там выбрать что нужно.
зависит от версии MI - до 8.0 - такого нету, дальше не знаю

Sibit
Активный участник
Сообщения: 216
Зарегистрирован: 21 окт 2009, 13:29
Репутация: 28
Откуда: Новосибирск

Re: Запрос в Mapinfo

Сообщение Sibit » 02 авг 2012, 10:44

SergS писал(а):
Sibit писал(а):Настройки/режимы/системные и там выбрать что нужно.
зависит от версии MI - до 8.0 - такого нету, дальше не знаю
И точно. В 7.8 такого нет, вообще в чемто странном считает. Тогда только через окно MApBasic

SergS
Активный участник
Сообщения: 120
Зарегистрирован: 14 апр 2011, 13:24
Репутация: 5
Откуда: Екатеринбург

Re: Запрос в Mapinfo

Сообщение SergS » 02 авг 2012, 11:04

Sibit писал(а):вообще в чемто странном считает
ну, почему странном - по умолчанию стоит "sq mi" :)

Foxxxy
Участник
Сообщения: 95
Зарегистрирован: 01 авг 2012, 09:15
Репутация: 1
Откуда: г. Санкт-Петербург

Re: Запрос в Mapinfo

Сообщение Foxxxy » 02 авг 2012, 15:24

Да, в квадратных милях. Spasibo vsem!

Константин А.
Новоприбывший
Сообщения: 2
Зарегистрирован: 29 май 2023, 15:44
Репутация: 0
Откуда: Москва

Re: Запрос в Mapinfo

Сообщение Константин А. » 09 июн 2023, 15:46

Всем привет, тема очень старая но вопрос у меня все же возник, есть слой с отрисованными участками к этим участкам добавлено описание, через некоторые участки идет объект подскажите как через sql запрос в таблицу выгрузить все участки пересекающиеся с объектом, пробовал через Intersects но вылазит ошибка что таблица "Intersects " не открыта делаю явно что то не так.

spawner
Активный участник
Сообщения: 104
Зарегистрирован: 09 окт 2009, 16:49
Репутация: 10

Re: Запрос в Mapinfo

Сообщение spawner » 10 июн 2023, 21:36

Константин А.,
Select * from Таблица1,Таблица2 where Таблица1.obj intersects Таблица2.obj

Ответить

Вернуться в «MapInfo»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 10 гостей