
- •2.6. Связывание таблиц
- •2.7. Проектирование запросов
- •2.7.1. Простой запрос
- •2.7.2. Конструктор
- •2.7.3. Повторяющиеся значения
- •2.7.4. Перекрестный запрос
- •Создание перекрестного запроса без помощи мастера
- •Создание перекрестных запросов с помощью мастера
- •Сортировка или ограничение заголовков столбцов, выводящихся в перекрестном запросе
- •2.7.5. Запрос на изменения
- •2.7.5.1. На добавление записей
- •2.7.5.2. На удаление записей
- •2.7.5.3. На обновление записей
- •2.7.5.4. На создание таблицы
- •2.7.6. Вычисления в запросах
- •2.7.6.1. Арифметические операторы
- •2.7.6.2. Операторы присваивания и сравнения
- •2.7.6.3. Логические операторы
- •2.7.6.4. Операторы слияния строковых значений
- •2.7.6.4. Операторы идентификации
- •2.7.6.5. Операторы сравнения с образцом
- •2.7.6.6. Создание выражений с помощью "Построителя выражений"
- •2.7.6.7. Функция сравнения
- •2.7.6.8. Статистические функции
2.7.6. Вычисления в запросах
При работе с объектами Access очень широко используются выражения. Примеры простых выражений приводились ранее, например, при вводе условий на значение поля в таблице.
Константы – характеризуют неизменные значения (операнды). Их часто используют для создания значений по умолчанию и для сравнения значений в полях таблиц. Значения констант определяются пользователем при вводе выражения. Например, Т-3-2 из рисунка 34, или "М-1-1" в "бланке запроса" "конструктора" запросов.
Числовые константы: 123; -34.67; -6.7Е-23
Строковые константы: "М-1-1", "Access"
Константы даты/времени: #08/11/2005#; #22-Mar-99#; #10:35:30#
Идентификаторы – это имена объектов Access (например, имена полей, таблиц или запросов), которые при вычислении выражений заменяются их текущими значениями.
Внимание: Если имя поля или таблицы содержит пробелы, то его идентификатор обязан в выражении заключаться в квадратные скобки.
Функции – возвращают в выражение значение вместо имени функции. Аргументы функции заключаются в круглые скобки. Классы функций:
-
Функции работы с массивами
-
Функции преобразования типов данных
-
Функции работы с объектами баз данных
-
Функции даты и времени
-
Функции динамического обмена данными
-
Статистические функции SQL
-
Функции обработки ошибок
-
Финансовые функции
-
Функции общего назначения
-
Функции сообщений ввода/вывода
-
Функции проверки
-
Функции ветвления
-
Математические функции
-
Текстовые функции
Все функции перечислены в "Построителе выражений"!
Операторы – знаки арифметических операций (+, -, *, /) и другие символы и аббревиатуры. Большинство из них эквивалентны операторам традиционных языков программирования. Другие – специфичны для Access или SQL.
Выражение – совокупность операндов и операций соответствующего типа.
2.7.6.1. Арифметические операторы
Арифметические операторы и выражения приведены в таблице
Оператор |
Описание |
Пример |
+ |
Сложение |
[Итог]+[Надбавка] |
- |
Вычитание |
Date()-7 |
- (унарный) |
Меняет знак операнда |
-123 |
* |
Умножение |
[Стипендия]*2.5 |
/ |
Деление |
[Стипендия]/2 |
\ |
Деление нацело. При использовании деления нацело операнды с десятичными дробями округляются до целого, а дробные части отбрасываются |
[Оценка]\2 |
Mod |
Остаток от деления |
[Оценка] Mod 3 |
^ |
Возведение в степень |
[Основание]^[Степень] |
2.7.6.2. Операторы присваивания и сравнения
Обычно в качестве оператора присваивания значения объекту, переменной используется знак равенства (=). Например, Field=Now() может присвоить полю таблицы значение по умолчанию, и тогда знак равенства действует как оператор присваивания. С другой стороны, знак равенства (=) представляет собой оператор сравнения, определяющий, равны ли два операнда.
Операторы сравнения приведены в таблице:
Оператор |
Описание |
Пример |
Результат |
< |
Меньше |
1 < 100 |
True |
<= |
Меньше или равно |
1 <= 1 |
True |
= |
Равно |
1 = 100 |
False |
>= |
Больше или равно |
100 > = 1 |
True |
> |
Больше |
100 > 100 |
False |
<> |
Не равно |
1 <> 100 |
True |
Если один из операндов имеет значение Null (пустое значение), то любое сравнение возвращает значение Null (тоже пустое значение).