Выборка в mapinfo

Не знаете, где задать вопрос? Задавайте здесь.
Ответить
maikl
Новоприбывший
Сообщения: 13
Зарегистрирован: 09 июл 2010, 05:30
Репутация: 0

Выборка в mapinfo

Сообщение maikl » 20 авг 2015, 08:31

Здравствуйте! Понимаю вопрос глупый, но нужна помощь. Вообщем есть у меня слой лесничества, где к примеру есть квартала с 1 по 158, в каждом из этих кварталов есть выдела, например с 1 по 90, вопрос такой: как из нужного мне квартала, выбрать нужные мне выдела, через sql запрос? Или сразу из всех имеющихся кварталов, выбрать нужные мне квартала, в каждом из которых выбрать еще и необходимые выдела?

Аватара пользователя
ginpetr
Завсегдатай
Сообщения: 385
Зарегистрирован: 21 июн 2011, 12:07
Репутация: 140
Откуда: Орск
Контактная информация:

Re: Выборка в mapinfo

Сообщение ginpetr » 20 авг 2015, 09:43

Я бы через команду обновить колонку записал бы в выделы номера кварталов (в выделы нужно сначала добавить целочисленную колонку). Получилась бы таблица выделов с колонками НОМЕР_КВАРТАЛА (НК) и НОМЕР_ВЫДЕЛА (НВ).
Запросить выделы можно было бы так:
select * from ВЫДЕЛЫ where str$(НК)+"_"+str$(НВ)=any("4_57","5_29","5_37","6_13") into selection

команда выберет выдел 57 из квартала 4, 29 из квартала 5, и т.д.

gamm
Гуру
Сообщения: 4168
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1107
Ваше звание: программист
Откуда: Казань

Re: Выборка в mapinfo

Сообщение gamm » 20 авг 2015, 09:46

in вместо =any будет кошернее ...

Boris
Гуру
Сообщения: 4231
Зарегистрирован: 10 апр 2006, 22:34
Репутация: -344969098
Откуда: Париж

Re: Выборка в mapinfo

Сообщение Boris » 30 авг 2015, 04:26

Видимо 1-ый отвечавший, считал мысли, автора вопроса, раз угадал строение его данных. Но вот на мой вкус, при таком небольшом количестве выборки, оптимальным является использование OR. При большом количестве - вынесение данных для выборки в отдельный файл (для простоты TAB или TXT) и использование мапинфошного аналога JOIN.
Опять же на мой вкус, не стоит слеплять числа в тест, равно как использовать IN или ANY без крайней нужды, по сравнению с JOIN они на десятичный порядок или два выполняются дольше. А уж если поля индексированы, то быстродействие будет на три порядка быстрее.

Ответить

Вернуться в «Я новичок!»

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

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