- •Лабораторная работа № 5. Запросы на выборку
- •Программа работы
- •Краткие сведения
- •Виды запросов
- •Создание запроса на выборку Создание запроса. Окно Конструктора запросов
- •Добавление полей в запрос
- •Указание порядка сортировки
- •Задание условия отбора исходных данных
- •Применение параметров в запросе
- •Флажок вывода на экран
- •Изменение имени поля в запросе
- •Сохранение запроса
- •Выражения. Применение выражений в запросах
- •Элементы выражений
- •Операторы
- •Арифметические операторы
- •Операторы присваивания и сравнения
- •Логические операторы
- •Операторы слияния строковых значений (конкатенации)
- •Операторы идентификации "!" и "."
- •Другие операторы
- •Константы в явном представлении
- •Идентификаторы
- •Функции
- •Создание вычисляемых полей с использованием выражений
- •Построитель выражений
- •Создание выражения с помощью построителя выражений
- •Групповые операции
- •Порядок и методика выполнения работы
- •Содержание отчета
- •Контрольные вопросы
Константы в явном представлении
Далее описаны три типа констант Access, которые в сочетании с операторами создают выражения:
Числовые константы — это последовательность цифр, содержащая при необходимости, знак числа и десятичную точку. Не нужно ставить знак "+" перед положительными числами, Access воспринимает числа положительными при отсутствии знака "–", Числовые константы могут содержать символ Е или е и знак порядка для изображения чисел в научной нотации, например –1.23Е–02.
Текстовые (или строковые) константы могут содержать любые печатаемые и непечатаемые символы, возвращаемые функцией Chr$(). Функция Chr$() возвращает символ, определяемый таблицей кодов ANSI (похожей на таблицу кодов ASCII), которой пользуется Windows. Например, Chr$(9) возвращает символ табуляции <Tab>. Печатаемые символы включают буквы и цифры, знаки пунктуации и другие специальные символы клавиатуры, такие, как тильда "~". В выражениях Access строковые константы нужно заключать в двойные прямые кавычки (""). Комбинации печатаемых и непечатаемых символов связываются амперсандом. Например, в следующем выражении две строки разделены символом <Enter>. "First line" & Chr$(13) & Chr$(10) & "Second line" Здесь Chr$(13) — это символ возврата каретки (CR), a Chr$(10) символ перевода строки (LF), вместе они образуют переход к новой строке. При вводе строковых констант в ячейки таблиц или бланки запросов Access сам добавит кавычки, а в других случаях это придется сделать самим.
Константы типа Дата/Время заключаются в знаки (#), как например в выражениях #l-Jan-80# или #10:20:30#. Access добавит эти знаки автоматически, если программа распознает ввод в бланк запроса даты или времени в стандартном формате Access.
У числовых и строковых констант есть точные эквиваленты в языках программирования, но только Access различает константы типа Дата/Время.
Идентификаторы
Идентификатор — это обычно имя объекта. Базы данных, таблицы, поля, запросы, формы и отчеты — объекты Access. У каждого объекта есть имя, однозначно его идентифицирующее. Иногда при идентификации подобъекта имя идентификатора состоит из имени семейства (класс объекта), отделенного от присвоенного имени (имени объекта) восклицательным знаком или точкой (операторами "!" и "."). В идентификаторе имя семейства идет первым, за ним — разделитель, затем присвоенное имя. В SQL разделитель имен объектов — точка. Вот пример идентификатора объекта в инструкции SQL:
Клиенты.Адрес
В этом примере идентификатор объекта поля "Адрес" содержится в объекте таблицы "Клиенты". Клиенты — имя объекта (таблицы), а Адрес — присвоеннoe имя подобъекта (поля). В Access для разделения имен таблиц и полей используется "!", а точка разделяет объекты и их свойства. Идентификатор, содержащий пробел или иную пунктуацию, заключается в квадратные скобки, как в этом примере:
[Персональные мероприятия]![Код сотрудника]
Имена идентификаторов не должны содержать точки и восклицательные знаки, например, [PA!ID] — недопустимое имя.
В простых запросах, использующих только одну таблицу, идентификатор обычно — это имя поля. С помощью идентификаторов можно возвращать значения полей в объекты форм и отчетов.