Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Rukovodstvo_polzovatelya_MapInfo_Professional.pdf
Скачиваний:
718
Добавлен:
05.03.2016
Размер:
11.58 Mб
Скачать

MapInfo Professional 7.5 Руководство пользователя (Полное)

Глава 8: Выборки по запросам

Выбор с помощью запросов в MapInfo Professional

Запрос это математический вопрос, который задается базе данных для получения определенной информации. В MapInfo Professional есть два инструмента составления запросов – ЗАПРОС и SQL-ЗАПРОС.

SQL-Запрос о больницах в городе

Команда ВЫБРАТЬ позволяет создать выборку (подмножество записей) на основании информации из какой-либо таблицы MapInfo, например:

Какие клиенты сделали покупки на 2000000 рублей и более?

Кто из клиентов живет в Раменском районе?

Команда SQL-ЗАПРОС позволяет решать следующие задачи в MapInfo:

создавать вычисляемые колонки – колонки, значения в которых вычисляются на основании значений в уже существующих колонках;

обобщать данные таким образом, чтобы вместо сумм просматривать суммарные данные по таблице;

объединять две или более таблицы в одну новую таблицу;

показывать только те колонки и строки, которые Вас интересуют.

MapInfo Professional 7.5

 

© May 2004 MapInfo Corporation. All rights reserved.

246

MI_UG.PDF

MapInfo Professional 7.5 Руководство пользователя (Полное)

Глава 8: Выборки по запросам

Команда Выбрать

Команда ВЫБРАТЬ позволяет формулировать запросы к таблице. С ее помощью можно выбирать записи и сопоставленные им графические объекты по значениям их атрибутов. Таким образом, можно выделять в окне Карты или Списка объекты, удовлетворяющие определенному критерию. Результаты запросов можно сохранять в виде таблиц, просматривать в окнах Списков, Карт и Графиков.

Вкоманде ВЫБРАТЬ можно формулировать такие запросы, как:

Покажите все районы, где средний доход жителей превышает 6000000 рублей.

Покажите все районы, где средний возраст населения составляет 42 года.

Покажите все районы, где средний доход жителей превышает 6000000 рублей, а средний возраст населения составляет 42 года.

Покажите все записи о заказах, сделанных в июле и сентябре.

Покажите все города в Ярославской, Владимирской и Костромской областях, население которых превышает 100000 жителей.

При работе с окном Списка MapInfo выделяет записи (строки списка), удовлетворяющие заданному в запросе критерию. При работе с окном Карты выделяются соответствующие этим записям графические объекты. Если же Вы работаете с окнами обоих типов, то выделяются и записи, и графические объекты. Во всех случаях MapInfo автоматически создает рабочую таблицу с названием "Selection" ("Выборка"), которая содержит результаты обработки запроса. Эту таблицу можно просматривать в окне Списка, Карты или Графика как любую другую таблицу. Кроме того, ее можно сохранить под другим именем командой

СОЗДАТЬ КОПИЮ.

Создание выражений

Чтобы выполнить поиск по запросу, необходимо задать логическое выражение, которое мы обычно используем, когда задаем вопросы. Например, имеется таблица о сдаваемом внаем жилье. Если Вы хотите создать временную таблицу жилья, стоимость аренды которого ниже $800 в месяц, следует задать выражение:

РЕНТА < 800

где РЕНТА – это название колонки, содержащей данные о ежемесячной арендной плате. Знак “<” означает "меньше чем".

MapInfo ищет в таблице все записи, которые удовлетворяют заданному условию, и помещает последние во временную таблицу, которую можно просматривать в окне Карты, Списка, Графика и производить над ней дальнейшие операции.

Можно производить арифметические операции над данными. Предположим, надо создать временную таблицу жилья, общая стоимость которого меньше $800. Общая стоимость образуется из арендной платы и ежемесячных коммунальных платежей. Задайте выражение:

РЕНТА + ПЛАТЕЖИ < 800

Таким образом MapInfo, складывает число из колонки РЕНТА с числом из колонки ПЛАТЕЖИ и сравнивает сумму с числом 800.

MapInfo Professional 7.5

 

© May 2004 MapInfo Corporation. All rights reserved.

247

MI_UG.PDF

MapInfo Professional 7.5 Руководство пользователя (Полное)

Глава 8: Выборки по запросам

Имеется два способа создания выражений. Во-первых, можно ввести выражение напрямую. Этот способ обычно быстрее при задании простых выражений. Второй способ состоит в том, что можно нажать кнопку СОСТАВИТЬ в диалоге “Выбрать” и построить выражение с помощью окошек в диалоге "Выражение". Такой способ обычно применяется начинающими пользователями или при построении сложных выражений.

Диалог "Выражение" содержит три окошка списка, с помощью которых можно составить выражение: Колонки, Операторы и Функции.

Колонки

Это окошко содержит список всех колонок таблицы, по которой будет производиться выбор. Если таблица содержит колонки, вычисленные по предыдущим запросам, то перечисляются и эти колонки.

Операторы

В этом окошке содержится перечень математических и логических операторов. Среди операторов – сложение, вычитание, умножение, деление, знаки "больше", "меньше" и "равно". С помощью этих символов можно создавать математические формулы.

Для примера, рассмотрим таблицу торговых агентов; среди них Вы хотите выбрать тех агентов, полный объем продаж у которых в месяц составляет в среднем $2000. Общий объем вычисляется как сумма продаж и комиссионных.

Пусть в таблице имеются две следующие колонки: ПРОДАЖИ, содержащая данные о годовом объеме продаж каждого агента, и КОМИССИЯ, содержащаяданные о годовом размере комиссионных каждого агента. Вы можете составить следующее выражение:

(ПРОДАЖИ + КОМИССИЯ) / 12 < 2000

Согласно выражению, MapInfo сложит число в колонке ПРОДАЖИ с числом из колонки КОМИССИЯ. Однако это дает общий годовой объем. Вы же хотите получить среднемесячный объем. Поэтому Вы делите сумму на 12. Полученное значение сравнивается с 2000.

В списке Операторы содержатся также логические операторы AND, NOT, OR и LIKE. Оператор LIKE может использоваться с двумя видами замещающих символов: ’%’ и ’_’. Символ ’%’ может быть заменен любым количеством других символов. Символ ’_’ замещается только одним другим символом.

MapInfo Professional 7.5

 

© May 2004 MapInfo Corporation. All rights reserved.

248

MI_UG.PDF

MapInfo Professional 7.5 Руководство пользователя (Полное)

Глава 8: Выборки по запросам

Функции

Это окошко содержит математические функции, имеющие один и более параметров и возвращающие значения. Эти функции применяются для получения значений элементарных функций над данными из какой-либо колонки. Например, abs(<number>) выдает абсолютное значение чисел из заданной колонки.

Например, метеоролог хочет выбрать все дни, когда температура в городе была на 10 градусов выше или ниже средней по стране. Для этого используется колонка СР_РАЗН, содержащая разницу температур в городе и в среднем по стране. Можно составить такое выражение:

СР_РАЗН < –10 Or СР_РАЗН > 10

Оно означает, что MapInfo должна выбрать все записи с разницей меньше -10 или больше +10. Однако выражение можно задать и по-другому:

abs(СР_РАЗН) > 10

Вэтом случае MapInfo будет выбирать все записи, абсолютное значение разницы в которых превосходит 10.

Окошко Функции содержит много других функций, в том числе функции площади, периметра, синуса, косинуса и дат. Полный список функций приведен в разделе Создание выражений в Главе 8 на странице 111.

Проверить

Эта кнопка дает команду проверить лексику и логику составленного выражения. Это полезно для проверки созданных новых выражений.

Выбор объектов с помощью команды Выбрать

Вобщих чертах процесс выбора объектов с помощью команды ВЫБРАТЬ выглядит так:

1.Выполните команду ЗАПРОС>ВЫБРАТЬ.

Выберите таблицу, из которой берутся записи. Создайте выражение для выбора записей. Выберите место сохранения результатов. Выберите колонку для сортировки.

2.Чтобы увидеть результаты выборки, установите флажок Результат в список.

3.MapInfo Professional откроет окно Списка и поместит туда новую выборку.

MapInfo называет временные таблицы выборок "Query1", "Query2" и т.д. При выборе записей с помощью команд ВЫБРАТЬ и SQL-ЗАПРОС можно задать свое название таблицы выборки. Введите это название в окошко Поместить в таблицу. Таблицу запроса можно сохранить под другим именем на диске командой СОЗДАТЬ КОПИЮ.

MapInfo Professional 7.5

 

© May 2004 MapInfo Corporation. All rights reserved.

249

MI_UG.PDF

MapInfo Professional 7.5 Руководство пользователя (Полное)

Глава 8: Выборки по запросам

Пример: Выборка

MapInfo предоставляет простые средства выбора и поиска информации. Вы можете создавать выборки из баз данных с помощью команды ВЫБРАТЬ. Рассмотрим, как выбрать из таблицы WORLD страны с уровнем грамотности выше 90%.

1.Откройте таблицу WORLD.TAB.

2.Выполните команду ЗАПРОС > ВЫБРАТЬ. Появится диалог "Выбрать”.

3.Заполните окошки диалога "Выбрать":

В окошке Выбрать записи из таблицы выберите World.

Нажмите кнопку СОСТАВИТЬ. Появится диалог "Выражение".

4.Заполните диалог "Выражение", как показано на рисунке выше.

Вокошке КОЛОНКИ выберите "Literacy"(грамотность).

Вокошке Операторы выберите ">" (больше).

Введите число 90.

Нажмите кнопку ПРОВЕРИТЬ, чтобы убедиться в правильности синтаксиса запроса. Нажмите в этом диалоге кнопку OK.

5.Нажмите OK, чтобы закрыть диалог "Выражение". Вновь появится диалог "Выбрать".

6.Проверьте, чтобы был установлен флажок Результат в Список.

7.MapInfo откроет окно Списка по результатам выбора. Выборка также будет выделена в окне "World Карта".

MapInfo Professional 7.5

 

© May 2004 MapInfo Corporation. All rights reserved.

250

MI_UG.PDF

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]