- •Инструментальная гис MapInfo 6: поиск данных, организация запросов
- •1. Укажите базу данных, в которой будет производится поиск
- •2. Укажите условия поиска. Рекомендуется использовать окно «Выражение», нажав кнопку Составить
- •3. Выполнение запроса. Будет создано окно «Список» с атрибутивными данными выбранных объектов, на карте выбранные объекты будут помечены красной штриховкой
- •Задания для лабораторной работы №3
1. Укажите базу данных, в которой будет производится поиск
2. Укажите условия поиска. Рекомендуется использовать окно «Выражение», нажав кнопку Составить
3. Выполнение запроса. Будет создано окно «Список» с атрибутивными данными выбранных объектов, на карте выбранные объекты будут помечены красной штриховкой
Для создания поискового выражения рекомендуется использовать элементы из стандартных списков Колонки, Операторы и Функции. Например, для поиска стран мира, население которых больше или равно 25-ти миллионам человек, необходимо выбрать из списка Колонки название поля, в котором хранится численность населения стран мира (Pop_1994). Далее, из списка Операторов выбираем >=, который будет сравнивать значение населения каждой страны с критерием поиска 25000000. Это числовое значение набирается с клавиатуры вручную, полностью, без разрывов между нолями, разделительных запятых или сокращений типа 25 млн. Для проверки правильности синтаксиса текста Запроса нажмите кнопку Проверить.
После составления и проверки правильности Запроса нажмите кнопку ОК.
Для построения запросов можно использовать математические операторы, например, найти страны мира, в которых доля неработающего населения превышает долю работающего. Для этого необходимо сложить долю детского населения Pop_0_14 с долей пенсионеров Pop_65Plus и сравнить полученную сумму с долей трудоспособного населения в возрасте от 15 до 64 лет:
Pop_0_14 + Pop_65Plus >= Pop_15_64
В выборку попадут страны, в которых доля нетрудоспособного населения равна или превышает долю трудоспособного.
Для сложных математических вычислений в текст Запроса могут включатся математические операторы и функции.
Математические операторы и операторы сравнения:
+ - сложение
- - вычитание
* - умножение
/ - деление
^ - возведение в степень
( ) – оператор приоритета
= - равно
<> - не равно
> - больше
< - меньше
>= - больше или равно
<= - меньше или равно.
Математические функции: Cos( ),Sin( ), Maximum( ), Minimum( ),
Логические операторы предназначены для построения сложных запросов, включающих два и более условия. Например, необходимо найти страны с численностью населения в диапазоне между 10 и 20 млн. человек. Для этого необходимо построить два условия выбора и связать логическим оператором, показывающим, как эти условия должны быть выполнены.
Логический оператор And (логическое И) указывает, что оба условия должны выполнятся, и в выборку попадут страны с населением от 10 до 20 млн. чел.
Логический оператор Or (логическое ИЛИ) указывает, что хотя бы одно из условий должно выполнятся, соответственно в выборку попадут как страны с населением от 10 млн. до бесконечности, так и от 0 до 20 млн. – все страны из обработанного запросом списка.
Пространственные операторы работают с картографическими объектами, определяя их тип, координаты, расстояния, длины, периметры и площади. Эти величины можно использовать для построения следующих запросов:
1. Найти страны с площадью территории более 1 млн. квадратных миль:
Area(obj, "sq mi") > 1000000
Функция Area(obj, "sq mi") определяет площадь всех стран мира в квадратных милях, оператор > сравнивает эти величины с критерием 1000000 и выбирает только большие величины.
2. Найти страны с плотность населения менее 10 чел. на квадратную милю. Для определения плотности населения необходимо разделить площадь страны на количество населения. Площадь населения определяется функцией Area, численность населения хранится в колонке Pop_1994.
Area(obj, "sq mi") / Pop_1994 <= 10
Для вычисления площадей в квадратных километрах необходимо аккуратно заменить буквы mi на km.
Area(obj, "sq mi") Area(obj, "sq km")