Речення HAVING в Access указує, які згруповані записи відображаються в інструкції SELECT з реченням GROUP BY. Коли речення GROUP BY поєднає записи, речення HAVING відобразить усі згруповані за допомогою GROUP BY записи, які задовольняють умови речення HAVING.
Синтаксис
Select fieldlist
ТАБЛИЦЯ FROM
Where selectcriteria
GROUP BY groupfieldlist
[HAVING groupcriteria]
Інструкція SELECT, яка містить речення HAVING складається з таких частин.
| Частина | Опис |
|---|---|
| список_полів | Ім’я поля або полів, які мають отримуватися разом зі всіма псевдонімами, агрегатними функціями SQL, предикативами вибору (ALL, DISTINCT, DISTINCTROW чи TOP) або іншими параметрами інструкції SELECT. |
| таблиця | Ім’я таблиці, з якої буде отримано записи. |
| умови_вибору | Умови вибору. Якщо інструкція містить речення WHERE, обробник бази даних Microsoft Access групує значення після застосування умов WHERE до записів. |
| список_полів_групи | Для групування записів використовується до 10 полів. Від порядку імен полів у списку groupfieldlist залежать рівні групування (від найвищого до найнижчого). |
| умови_групування | Вираз, який визначає, які згруповані записи слід відобразити. |
Примітки
Речення HAVING не є обов’язковим.
Речення HAVING схоже на речення WHERE, що визначає, які записи мають бути вибрані. Після групування записів за допомогою речення GROUP BY, речення HAVING визначає, які записи відображатимуться:
SELECT CategoryID,
Sum(UnitsInStock)
FROM Products
GROUP BY CategoryID
HAVING Sum(UnitsInStock) > 100 And Like "BOS*";
Речення HAVING може містити до 40 виразів, пов’язаних логічними операторами, наприклад And і Or.