Формулы в базе данных access

Формулы в базе данных access

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

· Выражение. Выполнение вычислений в поле по формуле.

· Суммирование (Sum). Суммирует все значения выбранного поля.

· Среднее значение (Avg). Вычисляет среднее значение всех чисел в выбранном поле.

· Минимум (Min). Определение наименьшего числа в поле.

· Максимум (Max). Определение наибольшего числа в поле.

Рис.19. Открываем окно со строкой Групповые операции

Для выполнения вычислений с использованием размещенных в полях запроса данных прежде всего проверьте в каких столбцах каких таблиц размещены необходимые для расчетов числа. Все эти столбцы (поля) включите в запрос. Затем следует, щелкнув левой кнопкой мыши в панели инструментов на кнопке Конструктор(рис. 19), добавить в окно запроса строку Групповая операция, которая по умолчанию скрыта. Откроется окно, показанное на рисунке 20. В некоторых версиях Accessв менюВидимеется строкаГрупповая операция, которая может быть использована для этой цели.

Рис.20. Строка Групповая операция

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

· Щелкните по строке Групповая операция в выбранном поле.

· Щелкните по появившейся в поле кнопке с треугольником.

· В раскрывшемся списке выберите строку Выражение (рис.21 ).

· В строке Вывод на экран надо отметить флажок.

Рис. 21. Выбор групповой операции «Выражение»

Формула записывается в строке Поле по тем же правилам, что и в Excel, но вместо адресов ячеек используются заключенные в квадратные скобки имена полей. Имя поля в формуле следует вводить с учетом регистра, вручную, не копировать! В формулу могут входить числа (константы), однако проценты необходимо преобразовать в десятичные дроби. Например, если требуется вычислить отпускную цену товара, увеличив оптовую цену на 25%, в строке Поле следует записать формулу:

После ввода формулы щелкните за пределами готового выражения, можно в другой строке. Вместо знака равенства Accessдобавит в начало формулы текст Выражение1:, который и станет именем поля. Этот текст можно позднее заменить. Если в запрос будет добавлено еще одно поле с формулой, оно получит имя Выражение2: и т.д. Откройте запрос и проверьте наличие нового поля с заголовком Выражение 1. Для того, чтобы просмотреть запрос в виде таблицы, выберите в меню команду Вид, в раскрывшемся списке – Режим таблицы. Для изменения заголовка поля щелкните в панели инструментов на кнопке Конструктор(рис. 19), затем в нужном столбце строки Поле (рис. 20) удалите прежнее имя и введите новое.

Дата добавления: 2015-05-09 ; Просмотров: 957 ; Нарушение авторских прав?

Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет

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

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

С другой стороны, при создании вычисляемого поля на основе содержимого текстовых полей, как правило, используется операция объединения текстовых значений, которая называется конкатенацией. В таблице 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, в котором содержатся фамилия и инициалы преподавателя.

Читайте также:  Программа o o shutup10

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

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


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

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


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

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

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

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

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

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

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

В выражениях применяются следующие типы операторов:

• арифметические операторы — используются для выполнения математических вычислений;

• операторы конкатенации — используются для слияния строк;

• операторы сравнения — используются для выполнения операций сравнения;

• логические операторы — используются для выполнения логических операций;

• операторы идентификации — создают однозначные имена объектов БД.

4.1.1. Арифметические операторы

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

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

1 Идентификатор — это элемент выражения, определяющий ссылку на значение поля, элемента управления или свойства.

Работа в Microsoft Access

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

например, 11 2 = 5; 7,6 2,5 = 4.

Оператор Mod также округляет оба операнда до целых значений и делит первый на второй. Результат — остаток от деления. Например, 9 Mod 2 = 1, а 7,6 Mod 4 =0.

Таблица 4.1. Арифметические операторы

Складывает два операнда

Вычитает из первого операнда второй

или меняет знак операнда

Перемножает два операнда

Делит один операнд на второй

Делит один операнд на второй нацело

Возводит первый операнд в степень,

задаваемую вторым операндом

Возвращает остаток от деления нацело

4.1.2. Операторы слияния строк (конкатенации)

Операторы & (амперсанд) или + создают текстовую строку, присоединяя содержимое второй строки к концу первой. Если один из операндов — число, то он преобразуется перед проведением операции слияния в строку символов.

Для объединения строк лучше использовать оператор &, а не +, так как если одна из участвующих в операции строк, например , имеет значение Null , то результат операции + равен Null , , а результат операции & равен .

Например, в выражении " Число заказов = " & [Число заказов] объединяются строка символов и значение поля Число заказов . Если число заказов равно 100, то результатом выполнения операции будет строка

" Число заказов = 100".

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

Оператор сравнения сравнивает значения двух операндов и возвращает в качестве результата одно из логических значений: True или False . Если хотя бы один из операндов является выражением со значением Null , то результат имеет значение Null .

Читайте также:  Погода на экран блокировки андроид

Глава 4.Выражения в Access

Кроме стандартных операторов сравнения, приведенных в таблице 4.2, в Access имеется еще четыре дополнительных оператора сравнения: Is , In , Between и Like , которые обычно используются для проверки условия на значение в поле или в условиях отбора записей в запросе.

При использовании вместе с Null определяет, является ли значение Null или Not Null . Например, Is Null применяется для отбора записей, имеющих в данном поле значение Null, а Is Not Null — для отбора записей, имеющих в данном поле непустое значение (см. пример 5.6).

Таблица 4.2. Операторы сравнения

Больше или равно

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

In("Москва";"Киев";"Минск") или In(2;4;6;8).

Осуществляет проверку, находится ли числовое значение внутри заданного диапазона. Например, Between 10 And 20 означает, что значение должно находиться в интервале [10, 20].

Таблица 4.3. Спецсимволы, используемые в операторе Like

Любой одиночный символ;

Любая одиночная цифра (0-9);

Любое число символов или их отсутствие;

Любой одиночный символ, входящий в список;

Любой одиночный символ, не входящий в список.

Работа в Microsoft Access

Осуществляет проверку значения на соответствие заданному шаблону.

Таблица 4.4. Примеры использования оператора Like

Любой текст, начинающийся с буквы «А» и

заканчивающийся буквами «ов»;

Значение должно содержать четыре символа;

начинаться с буквы K и заканчиваться цифрой.

Любой текст, начинающийся с букв А, Б, В и К;

Любой текст, не начинающийся с букв П, Р, С и Я.

В таблице 4.3 перечислены специальные символы, используемые в шаблоне, и соответствующие им символы в сравниваемом выражении. При проверке совпадения символов их регистр роли не играет. Чтобы включить в список диапазон символов, нужно указать первый символ, знак дефиса и затем последний символ, например [К-Р].

4.1.4. Логические операторы

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

Таблица 4.5. Логические операторы

Должны выполняться все условия;

Должно выполняться хотя бы одно из условий;

Не должно выполняться данное условие.

Результат выполнения операции логического умножения And равен True , если значения всех операндов равны True ; в противном случае он равен False .

Результат выполнения операции логического Or равен True , если значение хотя бы одного операнда равно True; в противном случае он равен

Результат выполнения операции логического отрицания Not равен True , если значение операнда равно False; в противном случае он равен

Глава 4.Выражения в Access

4.1.5. Операторы идентификации. Идентификаторы

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

Access использует два оператора идентификации "!" (восклицательный знак) и "." (точка).

Чаще в идентификаторах встречается оператор "!". Он используется для ссылок на объекты 1 . При ссылке на поле таблицы он служит для отделения имени поля от имени таблицы. Сами имена заключаются в квадратные скобки, и ссылка имеет следующий вид:

Это так называемая полная форма записи идентификатора поля таблицы. Если нет неопределенности в ссылке, то допустима и неполная форма записи идентификатора поля таблицы в виде [ ]. Так, в запросах, использующих одну таблицу, обычно используется неполная ссылка на поле. Например, полная ссылка на поле Фамилия в таблице

Студент имеет вид [Студент]![Фамилия] , а неполная — [Фамилия] .

Соответственно, ссылка на элемент управления формы (главной формы, если она содержит подчиненную форму) имеет такую полную форму записи:

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

В общем случае синтаксис оператора «!» таков:

Оператор "." (точка) обычно используется для ссылок на свойства форм, отчетов и элементов управления. В частности, идентификатор поля со списком в форме выглядит так:

1 В SQL и VBA для этой цели обычно используется оператор ".".

Ссылка на основную публикацию
Установить программу для сканирования документов бесплатно
Загрузите бесплатно пробную полнофункциональную версию программы для сканирования Scanitto Pro. Данная версия работает без каких-либо ограничений в течение 30 дней....
Террария мешок с сюрпризом
Мешок с сокровищамиTreasure Bag Характеристики Тип Мешок Подсказка Открывать правой кнопкой мыши Редкость Внутренний ID предмета: 3318-3332 Эксклюзивный контент ПК...
Термопринтер для печати чеков
Термопринтер для чеков — это печатное устройство, которое применяется в торговле и ряде других сфер. Большинство моделей являются стационарными и...
Установить протокол mtp media transfer protocol
Описание Компания Microsoft содержит под своим крылом множество драйверов, среди этой коллекции находится и Media Transfer Protocol, тот самый драйвер,...
Adblock detector