Поиск записей, которые содержат большинство или бы последние дат

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

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

В этой статье

Общие сведения

Подготовка образцов данных для выбора вместе с примерами

Поиск наиболее или бы последней датой

Поиск наиболее или бы последние дат для группы записей

Общие сведения

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

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

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

  • Кто сделать продаж в последнее время?

  • Когда клиента последнего разместить заказ?

  • Каковы сроки следующие три дни рождения рабочей группы?

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

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

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

Фильтр обычно лучше, если у вас определенной даты в виду. Чтобы определить, следует ли создание запроса верхних значений или применить фильтр, учтите следующее:

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

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

Дополнительные сведения о создании и с помощью фильтров, читайте в статье Применение фильтра для просмотра выберите записей в базе данных Access.

К началу страницы

Подготовка образцов данных для выбора вместе с примерами

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

В таблице сотрудников   

Фамилия

Первый Имя

Адрес

Город

CountryOrR egion

Рождения Дата

Наем Дата

Егоров

Владимир

Загородное шоссе, д. 150, кв. 15

Москва

Россия

05-фев-1968

10-июн-1994

Ерёменко

Алексей

ул. Гарибальди, д. 170, кв. 4

Москва

Россия

22-май-1957

22.11.96

Грачев

Николай

пр. Ленина д.12

Москва

Россия

11-ноя-1960

11-мар-2000

Горноженко

Ольга

ул. Губкина, д. 233, кв. 9

Москва

Россия

22-мар-1964

22-июн-1998

Грачев

Николай

пл. Хо Ши Мина, д. 15, кв. 5

Москва

Россия

05-июн-1972

05-янв-2002

Ильина

Юлия

ул. Ляпунова, д. 70, кв. 16

Москва

Россия

23-янв-1970

23-апр-1999

Климов

Сергей

ул. Строителей, д. 150, кв. 78

Москва

Россия

14-апр-1964

14-окт-2004

Корепин

Вадим

ул. Вавилова, д. 151, кв. 8

Москва

Россия

29-окт-1959

29-мар-1997

В таблице тип события   

КодТипа

События Тип

1

Презентация продукта

2

Корпоративное мероприятие

15

Частное мероприятие

16

Мероприятие по сбору средств

17

Выставка-продажа

18

Лекция

7

Концерт

8

Выставка

9

Уличная ярмарка

Таблица "Клиенты"    

КодКлиента

Компания

Контакт

1

Contoso, Ltd.

Новиков Николай

2

Tailspin Toys

Песоцкий Станислав

15

Fabrikam

Ушаков Валерий

16

Wingtip Toys

Попкова Дарья

17

A. Datum

Ильина Юлия

18

Adventure Works

Омельченко Светлана

7

Design Institute

Гладких Андрей

8

School of Fine Art

Корепин Вадим

Таблица "Мероприятия"    

КодМероприятия

События Тип

Клиент

События Дата

Цена

1

Презентация продукта

Contoso, Ltd.

4/14/2011 г.

100 000р.

2

Корпоративное мероприятие

Tailspin Toys

4/21/2011 г.

80 000р.

15

Выставка-продажа

Tailspin Toys

01.05.2011

250 000р.

16

Выставка

Graphic Design Institute

5/13/2011 г.

45 000р.

17

Выставка-продажа

Contoso, Ltd.

5/14/2011 г.

550 000р.

18

Концерт

School of Fine Art

5/23/2011 г.

120 000р.

7

Презентация продукта

A. Datum

6/12/2010

150 000р.

8

Презентация продукта

Wingtip Toys

6/18/2011 г.

210 000р.

9

Мероприятие по сбору средств

Adventure Works

6/22/2011 г.

13 000р.

10

Лекция

Graphic Design Institute

6/25/2011 г.

24 500р.

11

Лекция

Contoso, Ltd.

04.07.2011

38 000р.

120

Уличная ярмарка

Graphic Design Institute

04.07.2011

55 000р.

Примечание: Действия, описываемые в данном разделе, предполагают, что таблицы «Клиенты» и «Типы мероприятий» находятся на стороне «один» отношения «один-ко-многим» с таблицей «Мероприятия». В данном случае таблица «Мероприятия» имеет с этими таблицами общие поля «КодКлиента» и «КодТипа». Итоговые запросы, описанные в следующих разделах, не будут работать, если эти связи отсутствуют.

Вставка образцов данных в листы Excel

  1. Запустите приложение Excel. Откроется пустая книга.

  2. Чтобы добавить лист (всего понадобится четыре), нажмите клавиши SHIFT+F11.

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

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

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

  2. Щелкните правой кнопкой мыши в области навигации и выберите команду Вставить.

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

  4. Повторите действия 1–3 для каждого листа.

Поиск наиболее или бы последней датой

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

Создание простейших запросов на набор значений

  1. На вкладке Создание в группе Запросы нажмите кнопку Конструктор запросов.

    Откроется диалоговое окно Добавление таблицы.

  2. Дважды щелкните таблицу «Сотрудники» и нажмите кнопку Закрыть.

    Чтобы воспользоваться приведенным выше примером, добавьте в запрос таблицу «Сотрудники».

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

    Если вы работаете с приведенными примером, то добавьте поля «Фамилия», «Имя» и «Дата рождения».

  4. В поле, которое содержит искомые наибольшие или наименьшие значения (при использовании примера таблицы — поле «Дата рождения»), в строке Сортировкаи выберите порядок сортировки По возрастанию или По убыванию.

    При сортировке по убыванию будут возвращены самые последние даты, при сортировке по возрастанию — самые давние даты.

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

  5. На вкладке Конструктор в группе Сервис щелкните стрелку вниз рядом со значением Все (список Набор значений) и либо введите число записей, которые вы хотите просмотреть, либо выберите значение из списка.

  6. Чтобы выполнить запрос и отобразить результаты в режиме таблицы, нажмите кнопку Выполнить Изображение кнопки .

  7. Сохраните запрос как NextBirthDays.

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

Добавление условий в запрос

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

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

  1. В области навигации щелкните правой кнопкой мыши запрос NextBirthDays и выберите команду Конструктор.

  2. В бланке запроса в столбце справа от BirthDate, введите следующую команду:
    MonthBorn: DatePart("m",[BirthDate]).
    Это выражение с помощью функции DatePart извлекает месяца из BirthDate.

  3. В следующем столбце бланка запроса, введите следующее:
    DayOfMonthBorn: DatePart("d",[BirthDate])
    это выражение с помощью функции DatePart извлекает день месяца из BirthDate.

  4. Снимите флажки в строке Показать для каждого из этих двух выражений вы только что ввели.

  5. Щелкните строку для каждого выражения, Сортировка, а затем выберите по возрастанию.

  6. В строке условие отбора столбца Дата рождения введите следующее выражение:
    месяц ([Дата рождения]) > Month(Date()) или Month([Birth Date]) = Month(Date()) и Day([Birth Date]) > Day(Date())
    это выражение выполняет указанные ниже действия.

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

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

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

      Совет: Дополнительные примеры выражений условий запроса читайте в статье Примеры условий запроса.

  7. На вкладке " Конструктор " в группе Настройка запроса введите 3 в поле обратный.

  8. На вкладке Конструктор в группе Результаты нажмите кнопку Выполнить Изображение кнопки .

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

К началу страницы

Поиск наиболее или бы последние дат для группы записей

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

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

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

Создание итогового запроса

Эта процедура использует события образца таблицы и тип события образец таблицы для ответа на этот вопрос:

Когда было самых последних событий для каждого типа события, за исключением концерты?

  1. На вкладке Создание в группе Запросы нажмите кнопку Конструктор запросов.

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

  3. Закройте диалоговое окно Добавить таблицу.

  4. Дважды щелкните тип события тип события таблицы и EventDate поля в таблице Events, чтобы добавить поля в бланк запроса.

  5. В бланке запроса в строке условие отбора для поля тип события введите < > концерт.

    Совет: Дополнительные примеры выражений условий читайте в статье Примеры условий запроса.

  6. На вкладке Конструктор в группе Отображение нажмите кнопку Итоги.

  7. В бланке запроса щелкните строка итогов EventDate поля и нажмите кнопку Макс.

  8. На вкладке "Конструктор" в группе Результаты нажмите кнопку представление и выберите команду Режим SQL.

  9. В окне SQL в конце предложения SELECT, сразу после ключевого слова AS замените MaxOfEventDateMostRecent.

  10. Сохраните запрос как MostRecentEventByType.

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

Эта процедура используется MostRecentEventByType запрос из предыдущей процедуры для ответа на этот вопрос:

Кто был клиенту в самых последних событий для каждого типа событий?

  1. На вкладке Создание в группе Запросы нажмите кнопку Конструктор запросов.

  2. В диалоговом окне Добавление таблицы откройте вкладку запросы и дважды щелкните запрос MostRecentEventByType.

  3. На вкладке таблицы диалогового окна дважды щелкните таблицы событий и таблицы «Клиенты».

  4. В окне конструктора запросов дважды щелкните следующие поля:

    1. В таблице Events дважды щелкните тип события.

    2. Дважды щелкните запрос MostRecentEventByType MostRecent.

    3. В таблице «Клиенты» дважды щелкните компании.

  5. В бланке запроса в строке Сортировка столбца тип события выберите вариант по возрастанию.

  6. На вкладке Конструктор в группе Результаты нажмите кнопку Выполнить.

К началу страницы

Совершенствование навыков работы с Office
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

Были ли сведения полезными?

Спасибо за ваш отзыв!

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

×