Посібник із синтаксису виразів

Під час використання Microsoft Access у вас виникатимуть ситуації, коли потрібно працювати зі значеннями, не розташованими безпосередньо у ваших даних. Наприклад, може знадобитися розрахувати податок зі збуту для замовлення або обчислити загальну суму самого замовлення. Це можна зробити за допомогою виразів.

Щоб використовувати вирази, спершу потрібно записати їх із правильним синтаксисом. Синтаксис – це набір правил, за якими слова й символи у виразі правильно поєднуються.

По суті, якщо вам потрібно, щоб програма Access виконала якесь завдання, вам потрібно дати їй команду її ж мовою. Наприклад, якщо вам потрібно, щоб програма Access переглянула поле "Дата народження" в таблиці "Клієнти" та повідомила рік народження клієнта, ви можете записати такий вираз: DatePart("yyyy";[Клієнти]![Дата_народження]). Цей вираз складається з функції DatePart і двох аргументів: "yyyy" і [Клієнти]![Дата_народження].

Проаналізуймо його.

Приклад виразу

1. DatePart – це функція, яка аналізує дату та повертає певну її частину.

Порада : Починаючи з версії Access 2010, у побудовнику виразів є функція IntelliSense, що дає змогу дізнатися, які аргументи необхідні для виразу.

2. Аргумент інтервалу повідомляє Access, яку частину дати потрібно повернути. У нашому прикладі "yyyy" означає, що потрібно повернути лише ту частину дати, яка містить рік.

3. Аргумент дати повідомляє Access, де слід шукати значення дати. У цьому прикладі [Клієнти]![Дата_народження] дає вказівку шукати дату в полі "Дата_народження" таблиці "Клієнти".

Як ви бачите, для виразів у програмі Access використовується мова, яку спочатку дещо складно читати. Коли ви розумітимете синтаксис виразів і трохи попрактикуєтесь, вам стане значно легше.

Перш ніж перейти до написання виразів, слід зрозуміти кілька ключових ідей. У цій статті роз’яснюються поняття, які необхідно розуміти, щоб використовувати правильний синтаксис, а також обговорюється синтаксис виразів.

У цій статті не розглядається синтаксис мови структурованих запитів (SQL), а також не надаються вказівки щодо синтаксису Visual Basic for Applications (VBA).

У цій статті

Вступ

Об’єкти, колекції та властивості

Ідентифікатори

Функції, оператори та константи

Вступ

Щоб створити вираз, необхідно поєднати ідентифікатори за допомогою функцій, операторів і констант. Кожний припустимий вираз має містити принаймні одну функцію або один ідентифікатор, а також може містити константи чи оператори. Вираз також можна використовувати в складі іншого виразу, зазвичай як аргумент функції.

  • Ідентифікатори у виразах    Загальна форма ідентифікатора у виразі: [Ім’я колекції]![Ім’я об’єкта].[Ім’я властивості].

    Примітка : Потрібно лише вказати достатню кількість частин ідентифікатора, щоб зробити його унікальним у контексті вашого виразу. Ідентифікатор часто має форму [Ім’я об’єкта].

  • Функції у виразах    Загальна форма виразу, у якому використовується функція: Функція(аргумент;аргумент), де один з аргументів зазвичай є ідентифікатором або виразом.

    Примітка : Деякі функції не потребують аргументів.

    Перш ніж використовувати певну функцію, перегляньте конкретні відомості про її синтаксис у відповідному розділі довідки.

  • Оператори у виразах    Загальна форма виразу з використанням оператора: Ідентифікатор оператор ідентифікатор. Для цієї форми є винятки. Їх докладно описано в таблицях у розділі Оператори.

  • Константи у виразах    Загальна форма виразу з використанням константи: Ідентифікатор оператор_порівняння константа.

На початок сторінки

Об’єкти, колекції та властивості

Усі таблиці, запити, форми, звіти й поля в базі даних Access окремо називаються об’єктами. Кожен об’єкт має ім’я. Деякі об’єкти вже отримали ім’я, наприклад, таблиця "Контакти" в базі даних, створена із шаблона "Контакти" Microsoft Office Access. Створюючи новий об’єкт, ви повинні його назвати.

Набір усіх об’єктів певного типу називається колекцією. Наприклад, сукупність усіх таблиць у базі даних – це колекція. Деякі об’єкти, що входять до колекції у вашій базі даних, можуть також бути колекціями, які містять інші об’єкти. Наприклад, об’єкт таблиці є колекцією, яка містить об’єкти полів.

Об’єкти мають властивості, які описують і дають змогу змінювати характеристики об’єкта. Наприклад, об’єкт запиту має властивість Подання за замовчуванням, яка описує та дає змогу вказати, як відображатиметься запит, коли ви його виконуватимете.

На схемі нижче показано зв’язок між колекціями, об’єктами та властивостями.

Зв’язки між колекціями, об’єктами та властивостями

1. Колекція

2. Об’єкт

3. Властивість

На початок сторінки

Ідентифікатори

Використовуючи об’єкт, колекцію або властивість у виразі, ви посилаєтеся на цей елемент за допомогою ідентифікатора. Ідентифікатор містить ім’я елемента, який ви визначаєте, а також ім’я елемента, до якого він належить. Наприклад, ідентифікатор поля включає в себе ім’я поля та ім’я таблиці, до якої належить поле. Приклад такого ідентифікатора наведено в попередньому прикладі виразу: [Клієнти]![Дата_народження].

У деяких випадках ім’я елемента саме по собі може бути ідентифікатором. Так буває, коли ім’я елемента є унікальним у контексті виразу, який ви створюєте. Решта ідентифікатора випливає з контексту. Наприклад, якщо створюється запит, у якому використовується лише одна таблиця, імена полів працюватимуть як ідентифікатори, тому що імена полів у таблиці мають бути унікальні в цій таблиці. Оскільки використовується лише одна таблиця, ідентифікатор, який ви використовуєте в запиті для посилання на поле, одержує ім’я таблиці з контексту.

В інших випадках, щоб посилання працювало, ви повинні явним чином указати частини ідентифікатора. Це необхідно, якщо ідентифікатор неунікальний у контексті виразу. Коли існує неоднозначність, необхідно явно вказати достатньо частин ідентифікатора, щоб зробити його унікальним у контексті. Припустімо, ви створюєте запит, у якому використовуються таблиці "Товари" та "Замовлення". Обидві вони мають поле з іменем "Код_товару". У такому разі ідентифікатор, який використовується в запиті для посилання на будь-яке поле "Код_товару", крім імені поля, має містити ім’я таблиці. Приклад: [Товари]![Код_товару].

Оператори ідентифікатора    В ідентифікаторі можна використовувати три оператори:

  • знак оклику (!);

  • крапка (.);

  • квадратні дужки ([ ]).

Ці оператори використовуються таким чином: кожна частина ідентифікатора береться у квадратні дужки, які потім поєднуються за допомогою знака оклику або крапки. Наприклад, ідентифікатор для поля "Прізвище" в таблиці "Працівники" може мати вигляд: [Працівники]![Прізвище]. Знак оклику повідомляє Access, що після нього вказано об’єкт, який належить до колекції сайтів, указаної перед знаком оклику. У цьому прикладі [Прізвище] – це об’єкт поля, що належить до колекції [Працівники], яка сама є об’єктом таблиці.

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

На початок сторінки

Функції, оператори та константи

Щоб створити вираз, одних лише ідентифікаторів замало – потрібно також виконувати певну дію. Щоб у виразі виконувалися певні дії, використовуються функції, оператори й константи.

Функції

Функція – це процедура, яку можна використовувати у виразі. Деякі функції, наприклад Date, можуть працювати без вхідних даних. Але для більшості функцій потрібно вводити дані, які називаються аргументами. У прикладі, наведеному на початку цієї статті, у функції DatePart використовуються два аргументи: інтервал (зі значенням "yyyy") і дата (зі значенням [Клієнти]![Дата_народження]). Для функції DatePart потрібно вказати принаймні ці два аргументи (інтервал і дата), але можна задати до чотирьох аргументів.

Примітка : Якщо функція має кілька аргументів, їх потрібно розділяти крапкою з комою.

У наведеному нижче списку показано кілька функцій, які часто використовуються у виразах. Клацайте посилання, щоб отримати докладніші відомості про синтаксис тієї чи іншої функції.

  • Date Функція Date використовується, щоб вставляти у вираз поточну дату системи. Зазвичай використовується в поєднанні з функцією Format, а також з ідентифікаторами полів, які містять дані про дату й час.

  • DatePart Функція DatePart використовується, щоб визначати або видобувати частину дати. Зазвичай це дата, отримана з ідентифікатора поля, але іноді це значення дати, повернуте іншою функцією, наприклад Date.

  • DateDiff Функція DateDiff використовується, щоб визначати різницю між двома датами, зазвичай між датою, отриманою з ідентифікатора поля, і датою, отриманою за допомогою функції Date.

  • Format Функція Format використовується, щоб застосувати формат до ідентифікатора, а також до результатів іншої функції.

  • IIf Функція IIf оцінює вираз як "Істина" або "Хибність", а потім повертає одне задане значення, якщо вираз має значення "Істина", або інше, якщо – "Хибність".

  • InStr Функція InStr використовується, щоб шукати розташування символу або рядка в іншому рядку. Рядок, у якому виконується пошук, зазвичай отримується з ідентифікатора поля.

  • Left, Mid і Right Ці функції використовуються, щоб видобувати символи з рядка, починаючи з крайнього лівого символу (Left), певної позиції всередині рядка (Mid) або крайнього правого символу (Right). Вони зазвичай використовуються в поєднанні з функцією InStr. Рядок, з якого ці функції видобувають символи, зазвичай отримується з ідентифікатора поля.

Список функцій, розподілених за категоріями, див. в статті Функції (за категоріями).

Оператори

Оператор – це слово чи символ, який позначає певний арифметичний або логічний зв’язок між іншими елементами у виразі. Оператори бувають таких типів:

  • арифметичні оператори, наприклад знак плюс (+);

  • оператори порівняння, наприклад знак рівності (=);

  • логічні оператори, наприклад Not.

За допомогою операторів зазвичай позначаються зв’язки між двома ідентифікаторами. У таблицях нижче описано оператори, які можна використовувати у виразах Access.

Арифметичні оператори    

Використовуючи арифметичні оператори, можна виконувати арифметичні дії з кількома числами, а також змінювати знак числа з додатного на від’ємний.

Оператор

Призначення

Приклад

+

Сума двох чисел.

[Проміжний_підсумок] + [Податок_зі_збуту]

-

Визначення різниці між двома числами або позначення від’ємного значення числа.

[Ціна]-[Знижка]

*

Множення двох чисел.

[Кількість]*[Ціна]

/

Ділення першого числа на друге.

[Підсумок]/[Кількість_позицій]

\

Округлення обох чисел до цілих чисел, ділення першого на друге та скорочення результату до цілого числа.

[Зареєстровано]\[Номери]

Mod

Ділення першого числа на друге й повернення лише остачі.

[Зареєстровано] Mod [Номери]

^

Піднесення числа до степеня.

Число ^ Степінь

Оператори порівняння   

Оператори порівняння використовуються, щоб порівнювати значення, і повертають результат "Істина", "Хибність" чи Null-значення (якщо значення невідоме).

Оператор

Призначення

<

Визначає, чи перше значення менше за друге.

<=

Визначає, чи перше значення менше за друге або рівне йому.

>

Визначає, чи перше значення більше за друге.

>=

Визначає, чи перше значення більше за друге або рівне йому.

=

Визначає, чи перше значення дорівнює другому.

<>

Визначає, чи перше значення не дорівнює другому.

У всіх цих випадках, якщо перша або друга величина – це Null-значення, результатом також буде Null-значення. Оскільки Null-значення позначає невідоме значення, результат порівняння з Null-значенням також буде невідомий.

Логічні оператори    

За допомогою логічних операторів можна об’єднувати два значення. Вони повертають результат "Істина", "Хибність" або Null-значення. Логічні оператори також називаються булевими.

Оператор

Використання

Опис

And

вираз1 And вираз2

"Істина", якщо вираз1 і вираз2 істинні.

Or

вираз1 Or вираз2

"Істина", якщо істинний один із виразів: вираз1 або вираз2.

Eqv

вираз1 Eqv вираз2

"Істина", якщо істинні або хибні обидва вирази: вираз1 і вираз2.

Not

Not вираз

"Істина", якщо вираз не істинний.

Xor

вираз1 Xor вираз2

"Істина", якщо істинний лише вираз1 або лише вираз2, але не обидва.

Оператори об’єднання    

Оператори об’єднання використовуються, щоб об’єднувати два текстові значення в один рядок.

Оператор

Використання

Опис

&

рядок1 & рядок2

Поєднання двох рядків в один.

+

рядок1 + рядок2

Поєднання двох рядків в один і розповсюдження Null-значень.

Спеціальні оператори    

Використання спеціальних операторів описано в таблиці нижче.

Оператор

Опис

Додаткові відомості

Is Null або Is Not Null

Визначає, чи має операнд Null-значення.

Like "шаблон"

Зіставляє значення-рядки, використовуючи оператори-символи узагальнення ? та *.

Оператор Like

Between значення1 And значення2

Визначає, чи належить числове значення або значення дати до діапазону.

Оператор Between…And

In(рядок1; рядок2…)

Визначає, чи рядкове значення міститься в наборі рядкових значень.

Оператор In

Константи

Константа – це відоме значення, що не змінюється, яке можна використовувати у виразі. В Access є чотири константи, які часто використовуються:

  • True    Позначає щось, що є логічно істинним.

  • False    Позначає щось, що є логічно хибним.

  • Null    Позначає невідоме значення.

  • "" (пустий рядок)    Указує на значення, про яке відомо, що воно пусте.

Константи можна використовувати як аргументи функції, а також у виразі як частину умови. Наприклад, ви можете використати константу пустого рядка ("") як частину умови для стовпця в запиті, щоб оцінити значення полів для такого стовпця. Така умова має вигляд: <>"". У цьому прикладі <> – це оператор, а "" – константа. Разом вони показують, що ідентифікатор, до якого вони застосовуються, слід порівнювати з пустим рядком. Вираз, результатом якого є значення "Істина", якщо ідентифікатор має інше значення, ніж пустий рядок.

Примітка : Будьте уважні, використовуючи константу Null. Здебільшого використання Null у поєднанні з оператором порівняння призводить до помилки. Якщо у виразі потрібно порівняти значення з Null, використовуйте оператор Is Null або Is Not Null.

Додаткові відомості про використання виразів див. в статті Створення виразу.

На початок сторінки

Отримуйте нові функції раніше за інших
Приєднайтеся до оцінювачів Office

Ця інформація корисна?

Дякуємо за ваш відгук!

Дякуємо за відгук! Схоже, вам може стати в нагоді допомога одного з наших спеціалістів служби підтримки Office, з яким ми вас можемо з’єднати.

×