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

Глава 14: Районирование и создание выражений в MapInfo Professional

”4”+”5”

образует строку "45".

Операторы - Операторы сравнения

Оператор

Описание

 

 

=

“равно”

 

 

<>

“не равно”

 

 

>

“больше чем”

 

 

<

“меньше чем”

 

 

>=

“больше или равно”

 

 

<=

“меньше или равно”

 

 

Сравнение чисел

Сравнение чисел основано на сравнении числовых резльтатов выражений и констант. Допустим, нам нужно получить все данные о людях, чей доход составляет более $1000 в месяц:

18. ДОХОД>1000

Обращаем Ваше внимание на то, что знак доллара или запятые (ими разделяются тысячи в англоязычной литературе) использовать нельзя. MapInfo не обрабатывает их и выдаст сообщение об ошибке Например, требуется выбрать записи, в которых значение среднего возраста равно 42:

19. СР_ВОЗРАСТ=42

Данное выражение выбирает только те записи, в которых средний возраст точно равен 42. Если данные с возрастом содержат десятичные знаки (например, в демографических данных, поставляемых в комплекте с MapInfo), то точного значени 42 может и не встретиться. В этом случае Вы можете использовать функцию округления.

Вот пример использования данной функции:

20. Round(СР_ВОЗРАСТ, 1)=42

Функция Round(число, число) округляет первый аргумент с точностью, задаваемой вторым аргументом. В приведенном примере первое число означает средний возраст ("СР_ВОЗРАСТ"), а второе (1) показывает, что его надо округлять до ближайшего целого числа. Пусть требуется выбрать все строки, в которых суммы не равны 23 000:

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

433

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

21. СУММА<>23000

Функцию Round целесообразно использовать в том случае, если Вы не уверены, что имеется в виду точное значение 23 000 (см. пример 10).

Сравнение строк

Сравнение строк основано на точном сравнении символов в строке. В этом случае ">" означает "в алфавитном порядке больше, чем", а "<" - "меньше, чем (по алфавиту)". При введении в выражение строковой константы ее следует заключать в кавычки так программа будет воспринимать ее как строку, а не как имя колонки.

В следующем примере мы выберем все строки, в которых продавцом является фирма "Комета":

22. ПРОДАВЕЦ=”Комета”

Помните, чтострокадолжнабыть заключенав двойныекавычки, иначе MapInfo будетискать колонку с названием "Комета".

А теперь выберем все строки, в которых продавцом являются любые фирмы, кроме "Кометы":

23. ПРОДАВЕЦ<>”Комета”

Сравнение дат

Выберем все записи, в которых указано, что товар получен после 9 октября 1991 года:

24. ДОСТАВЛЕНО=”10–9–91”

Внимание: Не забывайте делать следующее:

заключать константы дат в кавычки;

использовать такой порядок: месяц, день, год;

разделять числа в выражении при помощи дефиса (-) или наклонной черты (/);

обозначать год двумя или четырьмя цифрами.

Теперь выберем записи, в которых товар получен после 9 октября 1991 года:

25. ДОСТАВЛЕНО>”10–9–91”

Однако, это выражение не выберет записи, относящиеся к 9 октября 1991. Для этого надо ипользовать оператор ">=":

ДОСТАВЛЕНО>=”10–9–91”

В следующем примере выбираем все записи, полученные до августа независимо от года:

26. Month(ДОСТАВЛЕНО) < 8

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

434

MapInfo Professional 7.5

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