Примеры выражений

Примеры выражений

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

Формы и отчеты

Таблицы, приведенные в этом разделе, содержат примеры выражений, вычисляющих значение в элементе управления в форме или отчете. Чтобы создать вычисляемый элемент управления, введите выражение в свойство Данные элемента управления, а не в поле таблицы или запроса.

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

Операции с текстом

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

Отображает результат N/A.

Отображает значения, хранящиеся в полях таблицы FirstName и LastName. В данном примере оператор & используется для объединения значения в поле «Имя», пробела (заключенного в кавычки) и значения в поле «Фамилия».

Функция Left используется для отображения первого знака в значении поля или элемента управления ProductName.

Функция Right используется для отображения последних двух знаков в значении поля или элемента управления AssetCode.

Функция Trim используется для отображения значения в элементе управления Address и удаления всех пробелов в начале или конце строки.

=IIf(IsNull([Region]), [City] & » » & [PostalCode], [City] & » » & [Region] & » » & [PostalCode])

Функция IIf используется для отображения значений элементов управления City и PostalCode, если элемент управления Region имеет пустое значение; в противном случае отображаются значения в элементах управления City, Region и PostalCode, разделенные пробелами.

=[City] & (» » + [Region]) & » » & [PostalCode]

Оператор + и распространение значений Null используются для отображения значений в элементах управления «Город» и «Индекс», если элемент управления или поле «Область» имеет значение Null; в противном случае отображаются значения в элементах управления или полях «Город», «Область» и «Индекс», разделенные пробелами.

Распространение значений Null означает, что если хотя бы один компонент выражения возвращает значение Null, то и все выражение также возвращает Null. Оператор + поддерживает распространение значений Null, а оператор & — нет.

Колонтитулы

Для отображения или печати номеров страниц в отчетах или формах используются свойства Page и Pages. Свойства Page и Pages доступны только во время печати или предварительного просмотра, поэтому они не отображаются на странице свойств формы или отчета. Обычно эти свойства используются путем перемещения текстового поля в область верхнего или нижнего колонтитула в форме или отчете и применения выражения, например из приведенной ниже таблицы.

Дополнительные сведения об использовании колонтитулов в формах и отчетах см. в статье Вставка номеров страниц в форму или отчет.

=»Стр. » & [Page] & » из » & [Pages]

Страница 1 из 3

=[Page] & » из » & [Pages] & » стр.»

=[Page] & «/» & [Pages] & » стр.»

Арифметические операции

Выражения могут использоваться для сложения, вычитания, умножения и деления значений в нескольких полях или элементах управления. Вы также можете применять их для выполнения арифметических операций над датами. Например, допустим, что в таблице есть поле даты и времени RequiredDate. В поле или элементе управления, связанном с полем, выражение =[RequiredDate] — 2 будет возвращать значение даты и времени, предшествующее на два дня значению в поле RequiredDate.

Сумма значений в полях или элементах управления Subtotal и Freight.

Интервал между значениями даты в полях или элементах управления RequiredDate и ShippedDate.

Результат умножения значения поля или элемента управления Price на 1,06 (добавление 6 процентов к значению Price).

Результат умножения значений в полях или элементах управления Quantity и Price.

Частное от деления значений полей или элементов управления EmployeeTotal и CountryRegionTotal.

Примечание Если в выражении используются арифметические операторы ( + , — , * , и / ) и один из элементов управления имеет значение Null, результатом всего выражения будет значение Null. Это называется распространением значений Null. Если хотя бы одна из записей в элементах управления, используемых в выражении, может иметь значение Null, следует преобразовать его в нуль при помощи функции Nz, например: =Nz([Subtotal])+Nz([Freight]) .

Значения в других элементах управления

Иногда требуется получить значение, хранящееся в другом месте, например в поле или элементе управления в другой форме или отчете. Для возвращения значения из другого поля или элемента управления можно использовать выражение.

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

Значение элемента управления «КодЗаказа» в форме «Заказы».

Значение элемента управления «ОтпускнаяЦена» из подчиненной формы «Заказано» в форме «Заказы».

Значение третьего столбца поля «КодТовара» (список из нескольких столбцов в подчиненной форме «Заказано») в форме «Заказы». (Обратите внимание, что индекс 0 является ссылкой на первый столбец, 1 — на второй и т. д.).

Результат умножения значения элемента управления «Цена» подчиненной формы «Заказано» в форме «Заказы» на 1,06 (добавление 6 процентов к значению «Цена»).

Значение элемента управления «КодЗаказа» в форме, которая является главной для текущей подчиненной формы.

Ниже приведены выражения, которые используются в вычисляемых элементах управления в отчетах. Выражения используют свойство Отчет.

Значение элемента управления «КодЗаказа» в отчете «Счет».

Значение элемента управления «Сумма заказов» из подчиненного отчета «Подотчет» в отчете «Итоги».

Значение элемента управления OrderID в отчете, который является главным (родительским) для текущего подчиненного отчета.

Количество значений, сумма и среднее

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

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

Функция Avg используется для отображения среднего значений в поле таблицы или элементе управления Freight.

Функция Count используется для отображения числа записей в элементе управления OrderID.

Функция Sum используется для отображения суммы значений в элементе управления Sales.

Функция Sum используется для отображения суммы произведений значений в элементах управления Quantity и Price.

Отображает процент продаж, полученный путем деления общего значения «Продажи» на сумму значений этого элемента управления.

Если для свойства Format (Формат) элемента управления задано значение Percent (Процентный), не включайте в выражение операцию *100 .

Агрегатные функции SQL

Агрегатные функции по подмножеству или SQL используются для вычисления выборочной суммы или выборочного подсчета значений. Подмножество — это одно или несколько полей в одной или нескольких таблицах на одной или нескольких формах или отчетах. Например, вы можете сопоставить значения в поле таблицы со значениями в элементе управления в форме.

=DLookup(«[ContactName]», «[Suppliers]», «[SupplierID] = » & Forms(«Suppliers»)(«[SupplierID]»))

Функция DLookup используется для возвращения значения из полей ContactName в таблице «Поставщики», для которых значение в поле SupplierID в таблице совпадает со значением элемента управления SupplierID в форме «Поставщики».

=DLookup(«[ContactName]», «[Suppliers]», «[SupplierID] = » & Forms![New Suppliers]![SupplierID])

Функция DLookup используется для возвращения значения из полей ContactName в таблице «Поставщики», для которых значение в поле SupplierID в таблице совпадает со значением элемента управления SupplierID в форме «НовыеПоставщики».

=DSum(«[OrderAmount]», «[Orders]», «[CustomerID] = ‘RATTC'»)

Функция DSum используется для возвращения значений из поля OrderAmount таблицы «Заказы», для которых значение поля CustomerID равно «РАТТС».

Функция DCount возвращает количество значений Yes в поле Retired (логическое поле) в таблице Assets.

Операции с датами

Отслеживание дат и времени — одно из основных действий при работе с базами данных. Например, вы можете вычислить, сколько дней прошло с момента выписки счета, чтобы определить срок дебиторской задолженности. Можно задать различные форматы даты и времени, как показано в следующей таблице.

Функция Date используется для отображения текущей даты в формате mm-dd-yy , где mm — месяц (от 1 до 12), dd — день (от 1 до 31), а yy — последние две цифры года (от 1980 до 2099).

Функция Format используется для отображения номера недели в году, на которую приходится текущая дата, где ww — номер недели от 1 до 53.

Функция DatePart используется для отображения значения года, содержащегося в элементе управления OrderDate, в четырехзначном формате.

=DateAdd(«y», -10, [PromisedDate])

Функция DateAdd используется для отображения даты, предшествующей на 10 дней дате в элементе управления PromisedDate.

=DateDiff(«d», [OrderDate], [ShippedDate])

Функция DateDiff используется для отображения разницы в днях между значениями дат в элементах управления OrderDate и ShippedDate.

Арифметическая операция используется для вычисления даты, которая на 30 дней позднее даты в поле или элементе управления InvoiceDate.

Условия для выбора одного из двух значений

В примерах выражений, приведенных в следующей таблице, используется функция IIf для возвращения одного из двух возможных значений. Функция IIf имеет три аргумента. Первый аргумент — это выражение, которое должно возвращать значения True или False . Второй аргумент — это значение, возвращаемое в случае, если выражение имеет значение True, а третий аргумент — значение, возвращаемое в случае, если выражение имеет значение False.

=IIf([Confirmed] = «Yes», «Order Confirmed», «Order Not Confirmed»)

Функция IIf используется для отображения сообщения «Order Confirmed», если элемент управления Confirmed имеет значение Yes ; в противном случае отображается сообщение «Order Not Confirmed.» .

Функции IIf и IsNull используются для отображения пустой строки, если элемент управления «Страна» имеет значение Null; в противном случае выводится его значение.

=IIf(IsNull([Region]), [City] & » » & [PostalCode], [City] & » » & [Region] & » » & [PostalCode])

Функции IIf и IsNull используются для отображения значений элементов управления «Город» и «Индекс», если элемент управления «Область» имеет значение Null; в противном случае отображаются значения в полях или элементах управления «Город», «Область» и «Индекс».

=IIf(IsNull([Срок]) Or IsNull([ДатаПоставки]); «Проверьте отсутствующую дату»; [Срок] — [ДатаПоставки])

Функции IIf и IsNull используются для отображения сообщения «Проверьте отсутствующую дату», если результат вычитания значения элемента управления «Срок» из значения «ДатаПоставки» равен пустому значению (Null); в противном случае отображается интервал между значениями дат «Срок» и «ДатаПоставки».

Запросы и фильтры

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

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

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

Операции с текстом

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

Источник:
http://support.microsoft.com/ru-ru/office/%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D1%80%D1%8B-%D0%B2%D1%8B%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9-d3901e11-c04e-4649-b40b-8b6ec5aed41f

Основные хитрости, применяемые в запросах

Все специалисты Access хранят в своих БД несколько (или несколько десятков) полезных запросов, упрощающих решение повседневных задач. В предыдущей главе вы узнали, как создавать запросы, обрабатывающие огромные объемы информации и предлагающие вам именно то, что вы хотите увидеть. Но знатоки программы Access знают, что гораздо больше мощи прячется за пределами окна конструктора запросов.

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

Когда вы начинали проектировать таблицы, то узнали, что в мире БД считается преступлением включение информации, основанной на данных другого поля или другой таблицы. Примером такой ошибки может служить таблица Products, в которой есть и поле Price (цена), и поле PriceWithTax (цена с включенным налогом). Проблема в том, что поле PriceWithTax вычисляется на основании поля Price. Хранение обоих полей — это избыточное расходование дискового пространства. Еще хуже, если налоговая ставка изменится, тогда вы останетесь с множеством записей, нуждающихся в обновлении, и возможностью появления противоречивых данных (например, когда цена с налогом окажется ниже цены без налога).

Читайте также  Как создать базу данных Microsoft Access 2010

Даже зная, что не следует создавать поля, такие как PriceWithTax, иногда вы вынуждены отображать в программе Access вычисляемые данные. Прежде чем компания Boutique Fudge напечатает список для одного из своих наименее любимых розничных продавцов, она хочет установить для цены надбавку 10%. Для этого компании необходимо откорректировать информацию о цене до вывода данных на печать. Если продавец увидит более низкую цену без надбавки, компания будет вынуждена запросить ее.

Запросы предлагают отличное решение такого рода проблем, поскольку они содержат универсальные методы математической обработки данных. Хитрость состоит в добавлении вычисляемого поля: поля, определенного в вашем запросе, но не существующего в таблице. Программа Access вычисляет значение этого поля, основываясь на одном или нескольких других полях таблицы. Значения вычисляемых полей никогда не хранятся в БД — программа генерирует их при каждом выполнении запроса.

Определение вычисляемого поля

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

Например, поле цены с налогом, PriceWithTax, определяется следующим образом:

PriceWithTax: [Price] * 1.10

По сути, это выражение сообщает программе Access о том, что нужно взять поле Price и умножить его на 1.10 (что эквивалентно повышению цены на 10%). Access повторяет это вычисление для каждой записи, входящей в результаты запроса. Для того чтобы это вычисление выполнялось, в таблице должно существовать поле Price. Но вовсе необязательно отображать отдельно это поле в окне результатов запроса.

Можно сослаться на поле Price, используя его полное имя, состоящее из имени таблицы с последующей точкой, за которой указано имя поля:

PriceWithTax: [Products].[Price] * 1.10

Такая синтаксическая запись нужна, если в ваш запрос включено несколько таблиц (например, использование запроса с операцией объединения (query join), описанного в разд. «Запросы и связанные таблицы» главы 6), и одно и то же поле есть в обеих таблицах. В этой ситуации следует применять полное имя для того, чтобы избежать неоднозначности. (Если не сделать этого, Access выдаст сообщение об ошибке при попытке выполнить запрос.)

Пользователи предыдущих версий программы Access иногда вместо точки используют восклицательный знак (например, [Products] ! [ Price]), что равнозначно.

Для добавления вычисляемого поля PriceWithTax вам понадобится Конструктор. Сначала найдите столбец, в который вы хотите вставить вычисляемое поле. (Обычно оно добавляется и конец, в первый свободный столбец, хотя можно раздвинуть существующие столбцы и освободить для него место.) Далее в ячейке Поле введите полное определение поля (рис. 7.1).

Теперь вы готовы к выполнению запроса. Когда вы выполните его, вычисляемые данные появятся рядом с другими столбцами (рис. 7.2). Если вы не довольны тем, что вычисляемые данные несколько иначе отформатированы — больше знаков в дробной части и нет символа валюты — это можно исправить с помощью округления (см. разд. «Применение функций » далее в этой главе) и форматирования (см.разд. «Форматирование чисел «далее в этой главе).

У вычисляемых полей есть одно ограничение — поскольку информация не сохраняется в вашей таблице, вы не можете их редактировать. Если нужно изменить цену, необходимо отредактировать базовое поле Price — попытка корректировать поле PriceWithTax привела бы программу Access в полное замешательство.

Выражение в каждый конкретный момент времени обрабатывает отдельную запись. Если вы хотите объединить информацию из некоторых записей для вычисления итогов или средних значений, необходимо использовать свойства группировки, описанные в разд. «Итоговые данные» далее в этой главе.

Рис. 7.1. Этот запрос отображает два поля непосредственно из БД (ID и Name)

и вставляет вычисляемое поле PriceWithTax. Обычное поле Price, которое программа Access

применяет для вычисления поля PriceWithTax, вообще не отображается

Рис. 7.2. Результаты запроса отображают поле PriceWithTax с надбавкой 10%. Главное состоит в том, что вычисляемая информация теперь доступна постоянно, несмотря на то, что она не хранится в БД. Попробуйте проверить это с помощью карманного калькулятора

На профессиональном уровне. Синхронизация запросов

Можно опробовать интересный прием. Выполните запрос ProductsWithTax и оставьте его открытым, отображающим свои результаты. Теперь откройте таблицу Products, содержащую реальные данные, и измените цену любого продукта. Вернитесь снова в запрос Products WithTax. Изменилось значение в этом запросе?

Если вы не знаете, что произойдет, не бойтесь — PriceWithTax автоматически обновляется для отображения новой цены. Программа Access автоматически синхронизирует представления запросов с реальными данными в вашей таблице. Access отслеживает изменение записи и немедленно обновляет окно результатов запроса.

Есть лишь несколько исключений из этого правила.

• Access не отслеживает добавление новой записи после запуска запроса — для того чтобы она учитывалась в результатах вашего запроса, необходимо обновить результаты.

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

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

• Если несколько пользователей на разных компьютерах редактируют БД (как описано в главе 18), вы не увидите немедленно изменения, внесенные другими пользователями.

Для получения самых свежих результатов можно обновить отдельные записи или весь запрос целиком. Для обновления одной записи выберите Главная > Записи > Обновить > Обновить запись (Home > Records > Refresh > Refresh Record). Для повторного выполнения запроса и полного обновления выберите Главная > Записи > Обновить > Обновить все (Home > Records > Refresh > Refresh All). Это действие также выводит на экран любые новые записи и скрывает те записи, которые после внесения изменений больше не удовлетворяют вашим условиям отбора.

Прежде чем двигаться дальше, есть смысл рассмотреть правила создания и использования вычисляемых полей. Далее приведено несколько рекомендаций.

¦ Всегда выбирайте уникальное имя. Выражение Price: [Price] * 1.10 создает циклическую ссылку, поскольку имя используемого вами поля такое же, как имя создаваемого поля. Программа Access не допускает подобных проделок.

¦ Формируйте выражения из полей, чисел и математических операций. Наиболее распространенные вычисляемые поля содержат одно или несколько существующих полей или числовые константы и соединяет их друг с другом с помощью хорошо знакомых знаков математических операций, таких как сложение (+), вычитание (-), умножение (*) или деление (/).

¦ Не удивляйтесь присутствию квадратных скобок. Выражение PriceWithTax: [Price] * 1.10 эквивалентно выражению PriceWithTax: Price * 1.10 (единственное отличие — квадратные скобки вокруг имени поля Price). Технически скобки нужны только,

если в имени ноля есть пробелы или специальные символы. Но если в Конструкторе вы вводите в запрос выражения без квадратных скобок, программа Access автоматически добавляет их, просто чтобы обезопасить себя.

Малоизвестная или недооцененная возможность. Переименование поля в запросе

Устали от длинных имен полей в окне результатов ваших запросов? Используя толькочто полученные знания, касающиеся выражений, можно безболезненно переименовать поле в окне результатов вашего запроса. Все что вам требуется — это вычисляемое поле. Хитрость заключается в создании (с помощью выражения) вычисляемого поля, совпадающего с одним из существующих полей и присвоении ему нового имени. Технически в этом поле не выполняются никакие вычисления, но оно все равно корректно действует. Далее приведен пример вычисляемого поля, которое переименовывает DateCustomerPlacedPurchaseOrder в Date: Date: DateCustomerPlacedPurchaseOrder Новое имя (в данном примере Date) называют псевдонимом (alias).

Используя этот прием, помните о том, что исходное иоле (в данном случае DateCustomerPlacedPurchaseOrder) не надо включать в ваш запрос. Нужная вам информация отображается в вычисляемом поле (Date).

Источник:
http://crypto.pp.ua/2011/03/osnovnye-xitrosti-primenyaemye-v-zaprosax/

Как создавать запросы в Access: пошаговая инструкция и рекомендации

Приложение СУБД MS Access – это полноценный помощник для создания и ведения баз данных, заключенных в таблицы и массивы. Если база имеет слишком большой объем, быстро найти необходимые значения довольно сложно.

Именно поэтому в Access существует такая функция, как запросы. Рассмотрим, что это такое, как работает, какие имеет особенности.

Создание запросов в Microsoft Access

Чтобы разобраться, как создавать запросы в Access, нужно знать основные положения работы с СУБД.

Существует два способа выполнить данную процедуру:

  • Конструктор запросов.
  • Мастер запросов.

Первый способ дает возможность создать любой из всех доступных запросов в ручном режиме, но с небольшой оговоркой, заключающейся в том, что пользователь имеет опыт работы с приложением Access. Также он должен разбираться хотя бы в основных его задачах. Что касается второго способа, то его нужно рассмотреть более подробно.

Легкий путь для новичков

Знающий человек за несколько кликов мышью выбирает те компоненты, которые потребуются пользователю для выполнения запроса, а затем быстро формирует реестр, в соответствии с собранными ключевыми значениями. Если это первое знакомство с СУБД, и пользователь не представляет, как создавать запросы в Access, то выбирается программа Мастер.

В данном режиме можно ознакомиться и разобраться со следующими типами запросов:

  • Простой.
  • Перекрестный.
  • Записи без подчиненных.
  • Повторяющиеся записи.

Данный выбор осуществляется уже на первом этапе работы с Мастером. А в дальнейшем, следуя четким указаниям, даже начинающий пользователь легко создаст запрос. Познакомимся с его разновидностями.

Простой запрос

Этот инструмент работы с таблицами собирает нужные данные из указанных пользователем полей. Уже по названию видно, что это самый популярный тип запросов для новичков. Его удобство заключается в том, что такая процедура открывается в новой вкладке. Поэтому ответ на вопрос, как создать запрос в Access 2010, становится очевидным уже после открытия первого меню Мастера.

Перекрестный запрос

Этот тип выборки более сложный. Чтобы разобраться, как создать перекрестный запрос в Access с помощью «Мастера» в данном режиме, нужно кликнуть по этой функции в первом окне.

На экране появится таблица, в которой можно выбрать до трех столбцов, расположенных в оригинале.

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

На фото показано, что перекрестный запрос создан, и что по заданным параметрам совершены необходимые действия.

Повторяющиеся записи

Как понятно из названия, основное предназначение данного запроса – выборка всех одинаковых строк в таблице по указанным параметрам. Выглядит это так:

Кроме того, доступен выбор дополнительных полей, чтобы подобрать соответствие сразу в нескольких строках.

Чтобы выбрать повторяющиеся записи, нужно раскрыть список запросов и создать там новую папку. Далее в окошке «Новый запрос» выбрать строку «Поиск повторяющихся записей». Далее нужно следовать указаниям Мастера.

Записи без подчиненных

Это последний тип запросов, доступный в режиме «Мастер – Записи без подчиненных».

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

Данный тип актуален только в случаях, когда баз данных несколько.

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

Функции запросов в MS Access

Разберемся, зачем нужно выполнять описанные выше действия. Задача всех простых и сложных запросов в СУБД Access заключается в следующем:

  • Сбор необходимых данных в таблицах, их последующих просмотр, редактирование, добавление новых значений.
  • Прекрасный исходный материал для подготовки всевозможных форм отчетности.
  • Проведение математических и статистических счетных процедур над целыми массивами данных с выводом итогов на экран (среднее значение, сумма, отклонение, итоги).

Запрос на выборку

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

Необходимо, чтобы во всех таблицах были общие ключевые поля. В противном случае совершить операцию не получится.

Повторим, как создать запрос на выборку в Access. Сначала нужно создать простой запрос с выбором нужных полей. Уже здесь можно редактировать данные, чтобы привести их в желаемый вид. К слову, внесенные изменения перенесутся и в исходные таблицы, так что этот момент нужно учитывать.

В открывшемся окне конструктора заполняется окно «Добавление таблиц». Здесь нужно добавить те таблицы или запросы, из которых нужно вытаскивать исходные значения.

После добавления можно приступить к заполнению условий запроса. Для этого нам нужна строка «Поле». В ней нужно подобрать те значения из таблиц, которые будут отображаться при запросе.

Читайте также  Определение ключевых полей

Чтобы завершить операцию, нужно нажать на кнопку «Выполнить».

Запрос с параметрами

Это еще одна разновидность сложной процедуры, которая потребует от пользователя определенных навыков работы с базами данных. Одним из главных направлений такого действия является подготовка к созданию отчетов с объемными данными, а также получение сводных результатов. Как создавать запросы в Access 2007 с помощью конструктора, будет рассмотрено ниже.

Начинать данную процедуру по выборке данных нужно с создания простого запроса, чтобы выбрать нужные поля. Далее через режим Конструктора обязательно нужно заполнить поле «Условие отбора» и, уже исходя из внесенного значения, будет осуществляться отбор.

Таким образом, на вопрос о том, как создать запрос с параметром в Access, ответ простой — внести исходные параметры для выборки. Чтобы работать с Конструктором необходимо пользоваться Мастером запросов. Там создается первичные данные для фильтрации, которые служат основой дальнейшей работы.

Расширенный перекрестный запрос

Продолжаем усложнять ситуацию. Еще труднее для понимания является информация о том, как создавать запросы в Access, если присутствует несколько таблиц с данными. Перекрестный запрос уже рассматривался выше, как один из вариантов работы с Мастером. Однако, и в режиме «Конструктора» можно создавать подобный запрос.

Для этого необходимо нажать «Конструктор запросов» — «Перекрестный».

Открывается меню добавления исходных таблиц, а также возможность заполнения выборочных полей. Единственное, на что следует обратить внимание, – пункты «групповая операция» и «перекрестная таблица». Их нужно заполнять правильно, иначе процедура не будет выполнена корректно.

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

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

Конечно, присутствуют и «подводные камни», которые могут помешать в работе. Например, при создании запроса на сортировку базы данных по значению столбцов система выдает ошибку. То есть доступна только сортировка по стандартным пунктам – «возрастание и убывание».

Краткие рекомендации

Подводя итоги, нужно сказать, что решить, как создавать запросы в Access – с помощью Мастера или Конструктора, должен сам пользователь. Хотя, для большинства людей, которые используют СУБД MS Access, больше подойдет первый вариант. Ведь Мастер сам сделает всю работу, оставив для пользователя только несколько кликов мышью, при выборе условий запроса.

Чтобы использовать расширенные настройки, явно необходим опыт работы с базами данных на уровне профессионала. Если в работе задействованы большие базы, лучше всего обратиться к специалистам, дабы избежать нарушения работы СУБД и возможных потерь данных.

Есть один момент, который доступен лишь программистам. Так как основным языком СУБД является SQL, то нужный запрос можно написать в виде программного кода. Чтобы работать в данном режиме, достаточно нажать на строку уже созданного запроса, и в открывшемся контекстном меню выбрать «Режим SQL».

Источник:
http://fb.ru/article/370546/kak-sozdavat-zaprosyi-v-access-poshagovaya-instruktsiya-i-rekomendatsii

Запросы в access

Запросы в access – объекты базы данных, извлекающие из таблиц или других запросов информацию согласно заданным условиям. Это виртуальные таблицы (существующие в оперативной памяти компьютера.

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

Можно легко обнаружить, является ли запрос обновляемым: при отображении результатов запроса в конце записей должна быть пустая строка, которая помечена значком звездочки (*) в области выделения записи слева. Тогда в эту строку можно вводить данные, которые создадут новую запись. Если такая строка отсутствует, добавлять записи в запрос и изменять значения полей запроса нельзя.

При разработке форм и отчётов желательно выбирать для них базовой основой запросы, а не таблицы. При необходимости базовый запрос легко модифицировать (задать новые условия, применить выражения и функции, создать вычисляемые поля и т. д.).

Основные отличия запросов от расширенного фильтра:

— используя реляционные связи, можно применять запрос к нескольким таблицам (запросам);

— на экран можно выводить только необходимые поля;

— в запросе можно переставлять поля в любом порядке;

— команды фильтра сохраняются временно, запрос хранится постоянно как объект базы данных;

— применение фильтра и сортировки возможно только в открытой таблице, запросе и форме, а запрос работает с таблицами и запросами, которые не надо открывать;

— в запросе можно выводить на экран только необходимые (по количеству или процентному соотношению) записи (например, для лучшей десятки продаж можно отсортировать сумму продаж по возрастанию, а в свойствах запроса «Набор значений» (в режиме конструктора) ввести число 10;

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

Обилие всяких кнопочек и настроек может постоянно сбивать вас с толку. Также может появиться страх при первом открытии программы.

Самым распространённым является запрос на выборку.

В строке условия отбора значение даты вводится, окруженное знаками #. Например, Between #01.01.2010# And #31.12.2010# — будут отобраны записи в диапазоне с 1 января по 31 декабря 2010 года.

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

При сортировке нескольких полей порядок сортировки идёт слева направо.

Если запрос очень сложный, можно разбить его на несколько составных (т. е. запрос делает запрос к запросу).

При операциях с числами программа использует математические знаки, например «+». Но при соединении текстовых полей знак «+» заменяется знаком «&» (амперсанд). Этот знак выполняет операцию конкатенации, т. е. соединяет между собой строки и подстроки, например, ФИО: [Фамилия] & » » & [Имя] & » » & [Отчество] (в кавычках заключена константа «пробел»).

Добавляются поля в запрос либо двойным щелчком на имени поля, либо прямым перетаскиванием, либо выбором из списка в строке «Поле» бланка запроса. Таблицу можно добавить в бланк запроса простым перетаскиванием из окна базы данных.

При создании вычисляемого поля надо ввести название столбца, после него знак двоеточия, а затем вычисляемое выражение (как в вышеупомянутом примере с ФИО).

Для очистки запроса есть команда меню Правка – Очистить бланк.

Нельзя добавлять и изменять записи в запросах, если:

— две таблицы запроса связаны отношением «один-ко-многим» и в таблице «один» не задан первичный ключ;

— в запросе используются рекурсивные соединения (связь установлена между полями одной таблицы (запроса));

— в запросе применяются статистические функции SQL.

Условия, при которых можно добавить или обновить записи в запросе:

— таблица является единственной в запросе;

— таблицы в запросе связаны отношением «один-к-одному»;

— если таблицы в запросе связаны отношением «один-ко-многим», можно изменять поля только в таблице «многие».

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

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

Если хотим, чтобы запрос извлекал все записи, удовлетворяющие хотя бы одному из условий, одно условие надо ввести в строку «Условие отбора», а другое в строку «Или».

В меню «Сервис»-«Параметры»-«Таблицы и запросы»-«Конструктор запросов»-«Вывод всех полей» надо отключить флажок, иначе при создании нового запроса будут автоматически добавляться все поля базовой таблицы (запроса).

Групповые операции (перекрёстные запросы в access)

Аксесс довольно сложная программа. Это подтверждает тот факт, что в интернете можно найти массу информации по ней. Однако, вы знаете что на самом деле достаточно знать лишь 20% инструментов, чтобы создавать и настраивать 80% баз данных в программе? И научиться этому можно после изучения 40 специальных видеоуроков, в которых описана самая суть без воды.

При помощи перекрёстного запроса вычисляются итоговые значения (суммы, количество значений, минимальные и максимальные значения и т. д.) данных и группируются по заголовкам столбцов и по заголовкам строк. Анализ информации значительно упрощается.

В перекрёстном запросе обычно три поля: поле заголовка столбцов, поле заголовка строк и поле итогового содержимого ячеек.

По умолчанию строка «Групповая операция» в режиме конструктора скрыта.

Группировка

Инструкция «Группировка» разбивает результаты запроса по каждому уникальному значению поля (полей). Например, если в поле Страна встречается 20 раз Литва, 30 раз Польша, 50 раз Чехия, то при группировке по этому полю будет всего три записи – по одной на каждую страну. Если будем добавлять группировку в другие поля, то количество выбранных записей возрастёт, так как программа будет искать уникальное значение не одного, а нескольких полей (например, зададим группировку по странам и по поставщикам. В Литве пять поставщиков, а, следовательно, уникальных записей для Литвы уже будет пять, а не одна).

Инструкция Группировка автоматически задаёт сортировку в алфавитном порядке. Для изменения порядка сортировки надо явно указать программе параметры в строке «Сортировка».

Управляющие запросы

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

Создание таблицы

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

Есть возможность создания новой таблицы в другой базе данных, выбрав свойство «Другая база данных» и введя имя базы в поле «Имя файла».

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

Перед выполнением запроса можно посмотреть, что получится, отобразив запрос в режиме таблицы. Создание физической таблицы произойдёт только после нажатия кнопки «Запуск».

Можно включить в новую таблицу вычисляемое поле. При создании таблицы поле станет заполненным данными.

Для создания архивной таблицы надо скопировать исходную таблицу и затем вставить её из буфера, скопировав при этом только структуру (без данных) таблицы.

Обновление

Позволяет изменять (обновлять) соответствующие значения в таблицах (одной или нескольких). Сразу создаётся обычный запрос на выборку и только затем на его основе запрос на обновление.

Добавление

Запрос на добавление извлекает записи из одной таблицы и добавляет их в конец другой (других). Можно применить, если надо добавить большое количество новых записей (новые поставщики и потребители и т. д.). Запрос выполняется один раз, иначе одни и те же записи будут добавлены неоднократно. Запрос хорош, когда в архивную таблицу добавляются записи, которые будут затем удалены из таблицы-поставщика.

Удаляет указанные записи в таблицах (одной или нескольких).

Перед выполнением запроса на удаление надо создать такой же запрос на выборку. Лишь убедившись, что отобраны нужные записи, меняем тип запроса «Выборка» на «Удаление».

При удалении связанных записей из главной таблицы (при установленном флажке каскадного удаления) Access выдаёт некорректное сообщение, например, что будет удалена одна запись, даже если в подчинённой таблице вместе с этой записью будут удалены сотни и тысячи связанных записей (т. е. выдаётся сообщение о количестве удаляемых записей в главной таблице).

Запрос с параметром

Хотите узнать какие 35 инструментов нужно знать, чтобы научиться создавать базы данных в Аксесс?

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

Для поля, которое предполагается использовать как параметр, введите в ячейку строки «Условие отбора» выражение с текстом приглашения, заключенным в квадратные скобки.

Например, нам часто нужны сведения по сотрудникам, фамилия которых начинается с определённой буквы. Можно сделать около 30 запросов (для почти всех букв русского алфавита), чтобы получать требуемые данные, но это займёт много времени для создания запросов, загромоздит базу данных и вызовет путаницу. Вместо этого создадим один запрос для формирования списка сотрудников, который будет нас спрашивать, с какой буквы начинающиеся фамилии мы хотим видеть. В поле «Условие отбора» введём: Like [Введите первую букву фамилии]& «*». На самом деле, если введём букву «С», условие будет читаться Access как Like «С*». Знак амперсанда «&» указывает на необходимость сцепления введённой буквы с остальными символами искомой ячейки, так как «*» обозначает любое количество символов после «С».

Например, выражение Between [Начальная дата:] And [Конечная дата:] запросит ввести начальную и конечную даты и выдаст все записи, содержащиеся в этом диапазоне (программа распознает разные форматы, например: 01.01.2010 или 01,01,2010 или 01/01/2010). Но для этого в режиме конструктора через меню Запрос – Параметры (можно вызвать через контекстное меню) надо вызвать диалоговое окно «Параметры запроса». В столбце «Параметр» указать правильно название, например [Начальная дата:], а в столбце «Тип данных» указать требуемый тип, в нашем случае «Дата/время». Как правило, указываются параметры для числовых и полей дата/время.

Читайте также  Выпадающий список на форме Access 2003, IT-блог для начинающих

Ещё пример: Like «. » & [Введите номер месяца, например, для марта — 03, для ноября — 11] & «. ». Программа попросит ввести номер месяца года и выдаст все записи, относящиеся к этому месяцу. Если в параметре ввести знак звёздочки «*», то будут выбраны дни рождений за все месяцы.

Запрос может не работать, если формат даты в условии задан 00.00.0000, а в настройках панели управления установлен 00/00/0000. Тогда надо вместо точек добавить ещё по одному вопросу.

Запрос на объединение таблиц

Запрос извлекает данные из нескольких таблиц, имеющих одинаковые поля. Самый простой способ извлечения записей из связанных таблиц.

При объединении таблиц, связанных отношением «один-ко-многим», поле первичного ключа таблицы «один» используется для отображения связанных записей из таблицы, представляющей сторону «многие».

Когда таблицы объединены, можно легко создать запрос, извлекающий данные из нескольких таблиц.

Программа переводит графический запрос в запрос SQL – универсальный язык запросов.

Собственный язык Access JetSQL имеет отличия от ANSI SQL.

Хотя большинство запросов создаются в режиме конструктора, Access хранит их в формате SQL (структурированном языке запросов). Чтобы увидеть режим SQL, надо выбрать Вид-Режим SQL.

Источник:
http://samoychka.ru/zaprosy-v-access.html

Вычисления в запросе БД Access

В БД Microsoft Access вычисляемые поля могут быть созданы в запросе, форме или отчете. Вычисляемые поля используются для различных целей, в том числе и для проведения расчетов, Для выполнения подсчетов в вычисляемые поля объектов базы данных Access вводят Выражения. Выражения — это формулы аналогичные формулам Excel, но только вместо ссылок на ячейки в них используются имена полей. Ввод выражений возможен как вручную, так и с помощью Построителя выражений.

Выражения могут содержать следующие элементы:

· идентификаторы (имя поля и элемента управления, которые заключаются в квадратные скобки);

· операторы (арифметические, логические, сравнения и другие операторы);

· функции (готовые формулы, которые состоят из имени и аргумента, помещенного в круглые скобки)

· константы (элементы, которые не изменяются в Выражении, например Null, Истина, Ложь);

· значения (например, значения даты и времени, численные положительные или отрицательные значения).

· =[Оценка]/1,2, где «=» — опрератор, [Оценка] — имя поля, а 1,2 — значение;

· Date(), где Date — имя функции текущей даты, которая не имеет аргумента.

Рассмотрим создание вычисляемых полей в бланке запроса базы данных Access 2003. Для ввода Выражения в запрос его необходимо открыть в режиме Конструктора. Чтобы создать вычисляемое поле в запросе (в существующем или вновь создаваемом запросе) открытого в режиме конструктора, необходимо ввести Выражение в строку Поле свободного столбца бланка запроса. Выражение может выполнять вычисления, обрабатывать текст, указывать время и дату, проверять данные и т.д. Необходимо отметить, что каждая формула вычисляется только для отдельной строки таблицы бланка запроса.

Рассмотрим создание вычисляемого поля в бланке запроса на примере базы данных Training_students_VP. Постановка задачи: в запросе на выборку (Запрос 3) создать поле, в котором должны отображаться итоговые оценки (ниже на 20% от полученных по результатам рейтинга). Для решения этой задачи откроем бланк «Запроса 3» в режиме конструктора (Рис. 1).


Рис. 1.

Для создания вычисляемого поля можно применить «Построитель выражений». Для этого надо установить курсор в свободное поле и выбрать на панели инструментов команду Построить (можно также воспользоваться контекстным меню), откроется окно Построитель выражений.

В верхней области построителя расположено текстовое поле выражения, предназначенное для записи выражения. Ниже поля выражения размещается строка с операторами. Три текстовых поля в нижней области используются для выбора элементов, которые могут быть вставлены в текстовое поле выражения. Выражение можно записать с клавиатуры или сформировать из готовых функций, операторов и других элементов.

Для поставленной задачи в Построитель можно ввести выражение =[Оценка]/1,2 с клавиатуры (Рис.2) и щелкнуть на кнопке ОК.


Рис. 2.

В результате в бланке запроса появится вычисляемое поле =[Оценка]/1,2


Рис. 3.

Далее надо закрыть бланк запроса в режиме конструктора и открыть его в режиме таблицы. В таблице вычисляемое поле состоит из слова «Выражение» и цифры 1, которая показывает, каким по счету создано выражение. Необходимо также отметить, что результаты вычислений, отображаемые в записях, не отформатированы.


Рис. 4.

С учетом вышеизложенного следует изменить название вычисляемого поля и отформатировать его. Для этого необходимо вернуться в режим конструктора и слово Выражение1 заменить на «Итог_оценка». Затем щелкнуть правой кнопкой мыши на вычисляемое поле и в контекстном меню выбрать команду Свойства, откроется диалоговое окно Свойства поля (Рис. 5)


Рис. 5.

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


Рис. 6.

Дата добавления: 2015-02-16 ; просмотров: 17 | Нарушение авторских прав

Источник:
http://lektsii.net/2-43804.html

Как в access сделать запрос на умножение?

На этом шаге будет рассмотрено создание вычисляемых полей.

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

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

Очевидно, что рассмотренные операторы предоставляют достаточно узкий спектр возможностей по созданию выражений. Чтобы создать сложное выражение, используют мощное средство, которое носит название Построитель выражений. Эта программа позволяет построить выражение любой сложности с использованием самых разнообразных функций (рис. 1).


Рис. 1. Построитель выражений

С ее помощью можно выполнять различные вычисления с использованием данных, находящихся в БД — полей таблиц, запросов, форм и отчетов. Все перечисленные объекты БД находятся, соответственно, в папках Таблицы, Запросы, Forms и Reports в левой части Построителя.

Чтобы выбрать требуемый объект, например, таблицу, необходимо выполнить двойной щелчок на папке Таблицы, в результате чего раскроется список всех таблиц БД. После выбора нужной таблицы (или другого объекта) в средней части Построителя отображается список ее полей, значения которых можно включить в создаваемое выражение. Для этого необходимо выбрать требуемое поле и нажать в окне Построителя кнопку Вставить.

При построении выражения кроме названий полей могут использоваться различные операторы (таблица 1), добавление которых выполняется при нажатии соответствующих кнопок в окне Построителя.

Также существует возможность использования в выражении различных функций Access. Для этого в левой части окна необходимо открыть папку Функции и выбрать пункт Встроенные функции. Затем следует в средней части Построителя определить категорию, в которой находится требуемая функция, и выбрать после этого в правой части окна название искомой функций (рис. 2, 3). Создаваемое таким образом выражение отображается в верхней части окна Построителя выражений.


Рис. 2. Построитель выражений. Встроенные функции


Рис. 3. Построитель выражений. Текстовая функция Left

Например, необходимо в запросе ПреподавателиПредметы вместо поля Фамилия добавитъ вычисляемое поле, в котором содержались бы фамилия и инициалы преподавателя.

Для этого необходимо открыть запрос в режиме конструктора. Затем установить курсор в строку Поле первого столбца, т.е. в поле Фамилия. После этого необходимо воспользоваться кнопкой Построить , в результате чего будет отображено окно Построитель выражений (рис. 1).

Примечание. Кнопка Построить позволяет не только создавать новые выражения, с ее помощью можно также изменять уже существующее выражение, которое в этом случае должно находиться в текущем поле.

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

Для создания текстовой строки с фамилией и инициалами необходимо несколько раз последовательно выполнить операцию конкатенации следующей структуры:

Фамилия & Символ Пробела & Инициал имени & Символ точки & Инициал отчества & Символ точки.

Все текстовые символы указываются в двойных кавычках, поэтому структура выражения примет такой вид:

Фамилия & » » & Инициал имени & «.» & Инициал отчества & «.».

Таким образом, начало выражения будет следующим:

Фамилия & » » &

Для работы с текстовыми значениями используются функции категории Текстовые. Чтобы получить инициал имени, необходимо воспользоваться одной из функций данной категории, а именно — функцией Lеft, которая возвращает первые n символов указанной строки.

Чтобы добавить функцию в выражение, необходимо дважды щелкнуть на папке Функции и выбрать после этого раздел Встроенные функции (рис. 2).

Затем во втором столбце необходимо выбрать требуемую категорию, в данном случае Текстовые, и после этого в третьем столбце выбрать нужную функцию, т.е. Left (рис. 3).

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

Left («stringexpr»; «n») ,

в котором необходимо указать значения требуемых параметров. В частности, вместо stringexpr нужно указать поле Имя, а вместо n — количество символов, которые необходимо получить из строки, т.е. 1. Таким образом, текущее выражение примет вид:

Необходимо отметить, что для поля Имя не указывалось название таблицы Преподаватели, так как оно было выбрано ранее в строке Имя таблицы окна конструктора запросов. С другой стороны, чтобы добавить в выражение имя поля конкретной таблицы, можно раскрыть папку Таблицы, и выбрать в таблице Преподаватели поле Имя (рис. 4), после чего установить курсор в соответствующее место выражения и нажать кнопку Вставить.


Рис. 4. Построитель выражений. Поле Имя таблицы Преподаватели

Таким образом, название поля с указанием имени таблицы необходимо отображать в следующем формате:

[Имя таблщы] ! [Название поля]

После указания первого инициала необходимо поставить точку, т.е. указать в выражении строку «.». Затем аналогичным способом добавить инициал отчества и снова поставить точку. Таким образом, будет получено следующее выражение:

Чтобы вернуться в окно конструктора запросов, необходимо нажать кнопку ОК. В результате созданное выражение будет находиться в строке Поле первого столбца запроса. Для выполнения запроса следует воспользоваться кнопкой Запуск , после чего в запросе будет создано вычисляемое поле Выражение1, в котором содержатся фамилия и инициалы преподавателя.

Названия полей запроса формируются автоматически. Для полей таблиц названия совпадают с названиями соответствующих полей запроса (например, поле Название). С другой стороны, названия вычисляемых полей формируются автоматически; Выражение1, Выражение2 и т. д. Очевидно, что такие названия не являются информативными.

Чтобы установить подпись для поля в таблице или запросе, необходимо в режиме конструктора установить курсор в требуемое поле (в частности, в поле Выражение1) и нажать кнопку Свойства . После этого в диалоговом окне Свойства поля можно на вкладке Общие указать в строке Подпись то название поля, которое будет использоваться вместо исходного в режиме редактирования запроса (или таблицы), а также в формах и отчетах. В частности, для вычисляемого поля Выражение1 можно указать подпись ФИО (рис. 5).


Рис. 5. Диалоговое окно Свойства поля

Таким образом, был создан и выполнен запрос на выборку с использованием вычисляемого поля (рис. 6).


Рис. 6. Запрос на выборку с вычисляемым полем ФИО

Создание запроса с вычисляемым полем можно увидеть здесь, а взять клип здесь.

На следующем шаге вы узнаете о групповых операциях, которые можно использовать при создании запроса.

Предыдущий шаг Содержание Следующий шаг

Источник:
http://it.kgsu.ru/MSAccess/access35.html