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

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

У цій статті

Огляд

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

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

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

  • Хто останнім часом робив продажі?

  • Коли клієнт Востаннє оформити замовлення?

  • Коли наступні три дні народження команди?

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

У цій статті припускається, що значення дат, які використовуються, мають тип даних "Дата/час". Якщо значення дати знаходяться в текстовому полі.

Використання фільтру замість запиту на запити найвищого значення

Фільтр зазвичай краще, якщо у вас є певна дата. Щоб визначити, чи потрібно створити запит на визначення найвищого значення або застосувати фільтр, зверніть увагу на таке:

  • Якщо потрібно повернути всі записи, у яких збігається дата, до якої потрібно додати дату, а не пізніше певної дати, використовуйте фільтр. Наприклад, щоб переглянути дати для збуту в період між квітнем і липнем, можна застосувати фільтр.

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

Щоб отримати докладні відомості про створення та використання фільтрів, перегляньте статтю Застосувати фільтр, щоб переглянути вибір записів у базі даних Access.

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

Підготування зразків даних для виконання разом із прикладами

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

Таблиця «працівники»   

LastName

Ім'я

Адреса

Місто

Інші функції

Дата народження

Дата найму

Коваленко

Тарас

вул. Сумська, 13

Харків

USA

05.02.1968

10.06.1994

Франко

Андрій

вул. Сагайдачного, 13

Черкаси

USA

22.05.1957

22.11.1996

Попкова

Іванчук

вул. Лісова, 58

Полтава

USA

11.11.1960

11.03.2000

Кузьменко

Євген Данилович

вул. Індустріальна, 1

Донецьк

UK

22.03.1964

22.06.1998

Левицька

Лілія

вул. Андріївська, 2

Одеса

Мехіко

05.06.1972

05.01.2002

Бойко

Галина

вул. Калініна, 33

Полтава

USA

23.01.1970

23.04.1999

Погребняк

Роман

вул. Барнаульська, 1

Суми

USA

14.04.1964

14.10.2004

Омельченко

Світлана

вул. Біла, 2

Миргород

USA

29.10.1959

29.03.1997

Таблиця ' ' тип події ' '    

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

Тип події

1

Запуск продукту

2

Корпоративна функція

3

Приватна функція

4

Фонд "Райзер"

5

Виставка

6

Лекція

7

Концерт

8

Призвести до

9

Вуличне ярмарку

Таблиця "Замовники"    

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

Компанія

Контакт

1

Contoso Ltd. Графічний елемент

Джонатан Хаас

2

Завод іграшок

Еллен Адамс

3

Fabrikam

Керол Філіпс

4

Іграшки для вінкінта

Лусіо Іалло

5

A. Datum

Мандар Самланс

6

Пригодницькі роботи

Браян Берк

7

Проектний інститут

Стела jaka

8

Школа образотворчого мистецтв

Мілена Дуоменова

Таблиця "події"    

EventID (Ідентифікатор події)

Тип події

Клієнт

Дата події

Ціна

1

Запуск продукту

Contoso Ltd.

4/14/2011

10 000₴

2

Корпоративна функція

Завод іграшок

4/21/2011

8 000 грн.

3

Виставка

Завод іграшок

01.05.2011

$25 000

4

Призвести до

Проектний інститут

5/13/2011

4 500 грн.

5

Виставка

Contoso Ltd.

5/14/2011

$55 000

6

Концерт

Школа образотворчого мистецтв

5/23/2011

12 000 грн.

7

Запуск продукту

A. Datum

6/1/2011

15 000 грн.

8

Запуск продукту

Іграшки для вінкінта

6/18/2011

21 000$

9

Фонд "Райзер"

Пригодницькі роботи

6/22/2011

$1 300

10

Лекція

Проектний інститут

6/25/2011

$2 450

11

Лекція

Contoso Ltd.

04.07.2011

$3 800

12

Вуличне ярмарку

Проектний інститут

04.07.2011

148 500 ₴

Примітка.: Кроки, описані в цьому розділі, передбачають, що таблиці клієнтів і типів подій розташовано на боці "один", що містить зв'язки "один-до-багатьох" з таблицею "події". У цьому випадку таблиця "події" розділяє поля "ідентифікатор клієнта" та "ідентифікатор TypeID. Запити на обчислення підсумків, описані в наступних розділах, не працюватимуть без цих зв'язків.

Вставте зразок даних на аркуші Excel

  1. Запустіть програму Excel. Відкриється пуста книга.

  2. Натисніть сполучення клавіш Shift + F11 щоб вставити аркуш (вам знадобляться чотири).

  3. Скопіюйте дані з кожної таблиці-зразка в пустий аркуш. Додайте заголовки стовпців (перший рядок).

Створіть таблицю бази даних із робочих аркушів

  1. Виберіть дані з першого аркуша, включно з заголовками стовпців.

  2. Клацніть правою кнопкою миші в області переходів і виберіть пункт Вставити.

  3. Натисніть Так, щоб підтвердити, що перший рядок містить заголовки стовпців.

  4. Повторіть кроки 1-3 для кожного з решти робочих аркушів.

Визначення найбільш або найменш недавньої дати

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

Створення основного запиту на початок для основних значень

  1. На вкладці Створити в групі Запити натисніть кнопку Конструктор запитів.

  2. Двічі клацніть таблицю "працівники", а потім натисніть кнопку закрити.

    Якщо ви використовуєте зразок даних, додайте таблицю працівників до запиту.

  3. Додайте поля, які потрібно використовувати в запиті, до сітки конструктора. Можна двічі клацнути кожне поле або перетягнути кожне поле до пустої клітинки в рядку поля .

    Якщо ви використовуєте зразок таблиці, додайте поля "ім'я", "Прізвище" та "Дата народження".

  4. У полі з верхнім або нижнім значенням (поле «Дата народження», якщо використовується зразок таблиці), клацніть рядок сортування та виберіть пункт за зростанням або за спаданням.

    Порядок сортування за спаданням повертає найновішу дату, а порядок сортування за зростанням повертає найранішу дату.

    Увага!: Потрібно встановити значення в рядку сортування лише для полів, які містять дати. Якщо вказати порядок сортування для іншого поля, запит не поверне потрібні результати.

  5. На вкладці Конструктор у групі Знаряддя клацніть стрілку вниз поруч із кнопкою Усі (список верхніх значень ) і вкажіть кількість записів, які потрібно переглянути, або виберіть параметр зі списку.

  6. Натисніть кнопку виконати Зображення кнопки, щоб виконати запит і відобразити результати у вікні табличного подання даних.

  7. Збережіть запит у форматі Nexdonднів.

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

Додавання умов до запиту

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

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

  1. В області переходів клацніть правою кнопкою миші запит Nexdonднів, а потім виберіть Конструктор.

  2. У сітці макета запиту в стовпці праворуч від дати _ народження виконайте такі дії:
    MonthBorn: DatePart ("m", [Дата _ народження]).
    Цей вираз витягує місяць від дати _ народження за допомогою функції DatePart .

  3. У наступному стовпці сітки конструктора запиту виконайте такі дії:
    DayOfMonthBorn: DatePart ("d"; [Дата _ народження])
    цей вираз витягує день місяця від дати _ народження за допомогою функції DatePart .

  4. Зніміть прапорці в рядку відображення кожного з двох виразів, які ви щойно ввели.

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

  6. У рядку критерії стовпця дата народження введіть такий вираз:
    місяць ([Дата народження]) > місяць (Date ()) або місяць ([Дата народження]) = місяць (дата ()) і день ([Дата народження]) >Day (Date ())
    . у цьому виразі буде наведено такі дії:

    • Місяць ( [Дата народження]) > місяць (Date ()) вказує на те, що дата народження кожного працівника припадає на майбутній місяць.

    • Місяць ( [Дата народження]) = місяць (дата ()) і день ([Дата народження]) >Day (Date ()) указує на те, що якщо дата народження настає в поточному місяці, день народження припадає на або після поточного дня.

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

      Порада.:  Додаткові приклади виразів умов запиту наведено в статті Приклади умов запиту.

  7. На вкладці Конструктор у групі Настроювання запиту введіть 3 у полі повернення .

  8. На вкладці Конструктор у групі Результати натисніть кнопку Запуск Зображення кнопки.

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

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

Пошук найбільш або найменш останніх дат для груп записів

Запит на обчислення підсумків використовується для пошуку найраніших або найпізніших дат для записів, які потрапляють в групи, наприклад події, згруповані за містом. Запит на обчислення підсумків – це вибір запиту, який використовує агрегатні функції (наприклад, " Групувати за", " M", " Max", " кількість", " перший" та " останній") , щоб обчислити значення для кожного поля

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

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

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

У цій процедурі використовується таблиця "приклади подій" , а також зразок таблиці "подія " для відповіді на це запитання:

Коли була остання подія кожного типу події, за винятком концертів?

  1. На вкладці Створити в групі Запити натисніть кнопку Конструктор запитів.

  2. Двічі клацніть таблиці події та типи подій.
    Кожна таблиця відображається у верхній частині конструктора запитів.

  3. Двічі клацніть поле "подія" в таблиці "подія" та поле "подія" з таблиці "події", щоб додати поля до сітки макета запиту.

  4. У бланку запиту в рядку критерії в полі " тип події" введіть <>концерт.

    Порада.:  Докладні приклади виразів умов наведено в статті Приклади умов запиту.

  5. На вкладці Конструктор у групі Відображення або приховання натисніть кнопку Підсумки.

  6. У бланку запиту клацніть рядок підсумків поля "Дата _ події", а потім натисніть кнопку Max.

  7. На вкладці Конструктор у групі Результати натисніть кнопку Подання та виберіть пункт Режим SQL.

  8. У вікні SQL в кінці речення SELECT одразу після ключового слова замініть Maxofeventdate за допомогою функції mostrecent.

  9. Збережіть запит як файл MostRecentEventByType.

Створення другого запиту для додавання додаткових даних

У цій процедурі використовується запит MostRecentEventByType від попередньої процедури для відповіді на це запитання:

Хто був клієнтом на останньому подію кожного типу події?

  1. На вкладці Створити в групі Запити натисніть кнопку Конструктор запитів.

  2. На вкладці запити двічі клацніть запит "MostRecentEventByType".

  3. На вкладці таблиці двічі клацніть таблицю "події" та таблицю "клієнти".

  4. У конструкторі запитів двічі клацніть наведені нижче поля.

    1. У таблиці "події" двічі клацніть елемент "подія".

    2. У запиті "MostRecentEventByType" двічі клацніть елемент "Mostнедавні".

    3. У таблиці "клієнти" двічі клацніть елемент "компанія".

  5. У сітці макета запиту в рядку сортування стовпця " тип події" виберіть пункт "за зростанням".

  6. На вкладці Конструктор у групі Результати натисніть кнопку Запуск.

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

Потрібна додаткова довідка?

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.

Спільноти допомагають ставити запитання й відповідати на них, надавати відгуки та дізнаватися думки висококваліфікованих експертів.

Чи ця інформація була корисною?

Наскільки ви задоволені якістю мови?
Що вплинуло на ваші враження?
Натиснувши кнопку "Надіслати", ви надасте свій відгук для покращення продуктів і служб Microsoft. Ваш ІТ-адміністратор зможе збирати ці дані. Декларація про конфіденційність.

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

×