Смекни!
smekni.com

MapInfo Professional 90 Руководство пользователя (стр. 69 из 125)

В команде Выбрать можно формулировать такие запросы, как::

• покажите все районы, где средний доход жителей превышает 5000 рублей в месяц;

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

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

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

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

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

Поиск объекта или адреса

Чтобы найти объект или улицу:

Ваши таблицы должны содержать географические данные и индексированные поля. Эти свойства таблицы определяются при создании таблицы (команда Файл > Новая таблица) или при изменении структуры (команда Таблица > Изменить > Перестроить).

1. Выполните команду Запрос > Найти. Появится диалог Найти.

2. Выберите в списке Искать в таблице таблицу, в которой содержится искомый объект.

3. Выберите в списке объекты из колонки колонку, содержащую искомую информацию. В списке меню показываются только индексированные колонки.

Вы можете задать режим уточнения при поиске. Режим Уточнить можно установить, если вы хотите найти объект, имя которого или адрес используются и в других объектах.

Например, какой именно город Воскресенск Вы ищите на карте России: в Нижегородской или в Московской области? Уточните параметры поиска, выбрав еще одну колонку (из другой таблицы). Такое уточнение позволит получить не только название города, но и области.

• Дополнительно - выберите в списке Искать в другой таблице имя "уточняющей" таблицы. Уточняющая таблица должна содержать данные о регионе, такие как название области, района, границы города или район переписи.

• Дополнительно - выберите в списке в границах, заданных в колонке имя колонки, содержащую информацию о границе поиска.

4. Если Вам нужно, чтобы поиск производился только в верхнем окне, установите флажок Искать только в верхнем окне. В противном случае поиск объектов будет осуществляться по всем окнам. Объекты, удовлетворяющие условиям поиска, выделяются специальным символом в окне Карты, в окне Списка будут выделены соответствующие записи. Если активно окно Списка, то оно будет пролистано до найденной записи.

После того как Вы задали, где будете искать объект или адрес, надо задать, что искать.

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

Имя колонки, которую Вы определили в первом диалоге, указано слева от поля поиска (например, Улица). При задании улицы и номера дома, порядок ввода зависит от параметра, заданного в диалоге Настройки > Режимы > Адресация.

Внимание: Вместе с MapInfo поставляется текстовый файл MAPINFOW.ABB [файл

сокращений MapInfo], в котором перечислены общепринятые сокращения с их расшифровками, такие как "пр" (сокращение от "проезд") и "просп" (от "проспект"). Это позволяет MapInfo правильно находить адреса с сокращениями. Чтобы ознакомиться с файлом MAPINFOW.ABB, откройте его в Блокноте (Notepad.exe).

6. Введите имя искомого объекта или адреса. Если Вы использовали режим Уточнить в первом диалоге Найти, то появится второе окошко для уточняющей колонки (например, ZIP).

7. Введите имя области, ограничивающей поиск. Если MapInfo не нашла объекта, который точно соответствует вашему описанию, выдается список возможных кандидатов.

8. Листать этот список можно с помощью кнопок Вверх и Вниз. Укажите на того кандидата, который соответствует объекту, который Вы искали.

9. Нажмите на кнопку OK и начнется поиск.

Вы можете использовать команду Запрос > Найти для поиска пересечений улиц. Когда Вы набираете во втором диалоге Найти название объекта, который надо найти, поставьте между названиями улиц двойной амперсант (&&). Например, чтобы найти пересечение Каширского шоссе с Шипиловской улицей, наберите "Каширское шоссе && Шипиловская ул."

Поиск и показ выбранных данных

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

1. Выполните одно из следующих действий:

• Из меню Запрос нажмите Выбрать, чтобы открыть диалог Выбрать

• Из меню Запрос выберите SQL-запрос, чтобы открыть диалог SQL-запрос

В каждом из диалогов присутствует поле для флажка Показать результат в текущем окне карты.

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

3. Поставьте флажок в поле Показать результат в текущем окне карты, чтобы визуализировать результаты.

4. Нажмите на кнопку OK.

• Дополнительная информация содержится в разделе Справочной системы: "Выбор всех объектов таблицы".

Рисунок: Результаты запроса Городское население >Сельское население (Urban Population > Rural Population)

Общая процедура создания запроса командой Выбрать

В MapInfo Professional существует две команды, с помощью которых можно выбирать объекты

по запросу: Выбрать и SQL-запрос. Команда Выбрать составляет более простые запросы,

чем SQL-запрос.

Для того чтобы выполнить запрос:

1. Выберите команду Запрос > Выбрать. Появится диалог Выбрать.

2. Откройте список раскрывающегося меню Выбрать записи из таблицы и выберите таблицу, записи которой хотите выбрать.

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

4. Дайте имя временной таблице в окошке Поместить результат в или оставьте стандартное. Если Вы оставили SELECTION, то MapInfo автоматически даст имя временной таблице такое, как Query1, Query2 и т. д.

5. Для сортировки запроса по значению в колонке: Выберите в меню Упорядочить по колонке имя колонки, по величинам из которой будет проведена сортировка.

6. Нажмите OK. Таблица запроса будет показана в окне Списка, если установлен флажок Результат в Список.

Вы можете применить команду Выбрать к объектам, чтобы выделить их на карте, а также просматривать получившуюся таблицу, как любую другую, строить на её основе карту, график.

• Этой командой Вы можете выделять записи, удовлетворяющие заданному критерию, в окне Списка.

• Если Вы работаете с картой, то этой командой Вы можете выделять записи, удовлетворяющие заданному критерию, в окне Карты.

• Если Вы работаете одновременно и с картой, со списком, то этой командой Вы можете выделять записи, удовлетворяющие заданному критерию, в окнах и Карты, и Списка.

В любом случае MapInfo автоматически создает временную таблицу с временным названием SELECTION, содержащую выборку по запросу. Эту таблицу можно использовать для построения карты, графика или списка, как любую другую таблицу. Эту таблицу можно также записать, выполнив команду Файл > Сохранить копию.

• Дополнительная информация содержится в разделах Справочной системы: "Сохранение запросов" и "Загрузка шаблонов запросов".

Построение запроса командой SQL-запрос

Чтобы создать SQL-запрос:

1. Откройте таблицу с данными, на основе которых будет осуществляться запрос, если Вы еще это не сделали. Эту таблицу мы будем называть исходной таблицей. Если выполнить SQL-запрос к таблице World, то таблица World будет исходной таблицей.

2. Выберите команду Запрос > SQL-запрос. Будет открыт диалог SQL-запрос. Заполните окошки для определения запроса. Нажмите на кнопку OK, MapInfo выполнит запрос.

На основе данных исходной таблицы MapInfo Professional строит специальную временную таблицу, которую мы будем называть результирующей. Результирующая таблица состоит только из тех, строк и колонок, которые отвечают критериям выполненного SQL-запроса. Стандартное имя для результирующей таблицы - SELECTION (если вы не изменили это имя в окошке И поместить в таблицу в диалоге SQL-запрос).

3. Откройте окно Карты или Списка с результирующей таблицей, если хотите просмотреть результаты запроса. Если в диалоге SQL-запрос был установлен флажок Результат в список, то окно Списка с результатами запроса откроется автоматически после выполнения запроса.

Если оставить стандартное название результирующей таблицы SELECTION, то временные таблицы в окнах списков будут называться по другому: Query1, Query2 и так далее. Это происходит для того, чтобы зафиксировать результат запроса, так как таблица SELECTION постоянно меняется в зависимости от изменения условий выбора, а MapInfo Professional присваивает новым "снимкам" последовательные имена Queryn (где n - число от единицы). MapInfo Professional автоматически делает снимок специальной таблицы Selection, которая динамически меняется при выборе или отмена выбора записей.

Если Вы задали свое имя для результирующей таблицы в диалоге SQL-запрос (например, можно назвать результирующую таблицу Мой_Запрос), то MapInfo не будет переименовывать результирующую таблицу в Queryn.