Как создавать запросы в access


Создание простого запроса на выборку

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

Если вы хотите узнать больше о принципах работы запросов на примере базы данных Northwind, ознакомьтесь со статьей Общие сведения о запросах.

В этой статье

  • Overview

  • Создание запроса SELECT с помощью мастера запросов

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

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

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

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

Преимущества запросов

Запрос позволяет выполнять перечисленные ниже задачи.

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

    Примечание: Запрос только возвращает данные, но не сохраняет их. При сохранении запроса вы не сохраняете копию соответствующих данных.

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

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

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

Основные этапы создания запроса на выборку

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

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

  2. Укажите поля из источников данных, которые хотите включить в результаты.

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

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

Создание запроса на выборку с помощью мастера запросов

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

Подготовка

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

Дополнительную информацию о создании отношений между таблицами можно найти в статье Руководство по связям между таблицами.

Использование мастера запросов

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

  2. В диалоговом окне Новый запрос выберите пункт Простой запрос и нажмите кнопку ОК.

  3. Теперь добавьте поля. Вы можете добавить до 255 полей из 32 таблиц или запросов.

    Для каждого поля выполните два указанных ниже действия.

    1. В разделе Таблицы и запросы щелкните таблицу или запрос, содержащие поле.

    2. В разделе Доступные поля дважды щелкните поле, чтобы добавить его в список Выбранные поля. Если вы хотите добавить в запрос все поля, нажмите кнопку с двумя стрелками вправо (>>).

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

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

    Выполните одно из указанных ниже действий.

    1. Если вы хотите просмотреть отдельные записи, выберите пункт подробный и нажмите кнопку Далее. Перейдите к действию 9.

    2. Если вам нужны итоговые числовые данные, например средние значения, выберите пункт итоговый и нажмите кнопку Итоги.

  5. В диалоговом окне Итоги укажите необходимые поля и типы итоговых данных. В списке будут доступны только числовые поля.

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

    1. Sum    — запрос вернет сумму всех значений, указанных в поле.

    2. Avg    — запрос вернет среднее значение поля.

    3. Min    — запрос вернет минимальное значение, указанное в поле.

    4. Max    — запрос вернет максимальное значение, указанное в поле.

  6. Если вы хотите, чтобы в результатах запроса отобразилось число записей в источнике данных, установите соответствующий флажок Подсчет числа записей в (название источника данных).

  7. Нажмите ОК, чтобы закрыть диалоговое окно Итоги.

  8. Если вы не добавили в запрос ни одного поля даты и времени, перейдите к действию 9. Если вы добавили в запрос поля даты и времени, мастер запросов предложит вам выбрать способ группировки значений даты. Предположим, вы добавили в запрос числовое поле ("Цена") и поле даты и времени ("Время_транзакции"), а затем в диалоговом окне Итоги указали, что хотите отобразить среднее значение по числовому полю "Цена". Поскольку вы добавили поле даты и времени, вы можете подсчитать итоговые величины для каждого уникального значения даты и времени, например для каждого месяца, квартала или года.

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

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

  9. На последней странице мастера задайте название запроса, укажите, хотите ли вы открыть или изменить его, и нажмите кнопку Готово.

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

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

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

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

Создание запроса

  • Действие 1. Добавьте источники данных

  • Действие 2. Соедините связанные источники данных

  • Действие 3. Добавьте выводимые поля

  • Действие 4. Укажите условия

  • Действие 5. Рассчитайте итоговые значения

  • Действие 6. Просмотрите результаты

Действие 1. Добавьте источники данных

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

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

  2. Дважды щелкните каждый источник данных, который вы хотите использовать, или выберите каждый из них, а затем нажмите кнопку "Добавить".

Автоматическое соединение

Если между добавляемыми источниками данных уже заданы отношения, они автоматически добавляются в запрос в качестве соединений. Соединения определяют, как именно следует объединять данные из связанных источников. Access также автоматически создает соединение между двумя таблицами, если они содержат поля с совместимыми типами данных и одно из них — первичный ключ.

Вы можете настроить соединения, добавленные приложением Access. Access выбирает тип создаваемого соединения на основе отношения, которое ему соответствует. Если Access создает соединение, но для него не определено отношение, Access добавляет внутреннее соединение.

Если приложение Access при добавлении источников данных автоматически создало соединения правильных типов, вы можете перейти к действию 3 (добавление выводимых полей).

Повторное использование одного источника данных

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

При добавлении источника данных во второй раз Access присвоит имени второго экземпляра окончание "_1". Например, при повторном добавлении таблицы "Сотрудники" ее второй экземпляр будет называться "Сотрудники_1".

Действие 2. Соедините связанные источники данных

Если у источников данных, которые вы добавляете в запрос, уже есть связи, Access автоматически создает внутреннее присоединение для каждой связи. Если целостность данных, access также отображает "1" над линией связи, чтобы показать, какая таблица находится на стороне "один" отношение "один-ко-многим", и символ бесконечности(∞),чтобы показать, какая таблица находится на стороне "многие".

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

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

Добавление соединения

  • Чтобы создать соединение, перетащите поле из одного источника данных в соответствующее поле в другом источнике.

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

Изменение соединения

  1. Дважды щелкните соединение, которое требуется изменить.

    Откроется диалоговое окно Параметры соединения.

  2. Ознакомьтесь с тремя вариантами в диалоговом окне Параметры соединения.

  3. Выберите нужный вариант и нажмите кнопку ОК.

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

Действие 3. Добавьте выводимые поля

Вы можете легко добавить поле из любого источника данных, добавленного в действии 1.

  • Для этого перетащите поле из источника в верхней области окна конструктора запросов вниз в строку Поле бланка запроса (в нижней части окна конструктора).

    При добавлении поля таким образом Access автоматически заполняет строку Таблица в таблице конструктора в соответствии с источником данных поля.

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

Использование выражения в качестве выводимого поля

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

  1. В пустом столбце таблицы запроса щелкните строку Поле правой кнопкой мыши и выберите в контекстном меню пункт Масштаб.

  2. В поле Масштаб введите или вставьте необходимое выражение. Перед выражением введите имя, которое хотите использовать для результата выражения, а после него — двоеточие. Например, чтобы обозначить результат выражения как "Последнее обновление", введите перед ним фразу Последнее обновление:.

    Примечание: С помощью выражений можно выполнять самые разные задачи. Их подробное рассмотрение выходит за рамки этой статьи. Дополнительные сведения о создании выражений см. в статье Создание выражений.

Действие 4. Укажите условия

Этот этап является необязательным.

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

Определение условий для выводимого поля

  1. В таблице конструктора запросов в строке Условие отбора поля, значения в котором вы хотите отфильтровать, введите выражение, которому должны удовлетворять значения в поле для включения в результат. Например, чтобы включить в запрос только записи, в которых в поле "Город" указано "Рязань", введите Рязань в строке Условие отбора под этим полем.

    Различные примеры выражений условий для запросов можно найти в статье Примеры условий запроса.

  2. Укажите альтернативные условия в строке или под строкой Условие отбора.

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

Условия для нескольких полей

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

Настройка условий на основе поля, которое не включается в вывод

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

  1. Добавьте поле в таблицу запроса.

  2. Снимите для него флажок в строке Показывать.

  3. Задайте условия, как для выводимого поля.

Действие 5. Рассчитайте итоговые значения

Этот этап является необязательным.

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

Для расчета итоговых значений в запросе используется строка Итого. По умолчанию строка Итого не отображается в режиме конструктора.

  1. Когда запрос открыт в конструкторе, на вкладке "Конструктор" в группе "Показать или скрыть" нажмите кнопку Итоги.

    Access отобразит строку Итого на бланке запроса.

  2. Для каждого необходимого поля в строке Итого выберите нужную функцию. Набор доступных функций зависит от типа данных в поле.

    Дополнительные сведения о функциях строки "Итого" в запросах см. в статье Суммирование или подсчет значений в таблице с помощью строки "Итого".

Действие 6. Просмотрите результаты

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

Чтобы вернуться в режим конструктора и внести в запрос изменения, щелкните Главная > Вид > Конструктор.

Настраивайте поля, выражения или условия и повторно выполняйте запрос, пока он не будет возвращать нужные данные.

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

Создание запроса на создание таблицы

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

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

Чтобы добавить записи (строки) в существующую таблицу, вы можете использовать запрос на добавление. Дополнительные сведения о запросах на добавление см. в статье Добавление записей в таблицу с помощью запроса на добавление.

В этой статье

  • Общие сведения о запросах на создание таблиц

  • Создание запроса на создание таблицы

  • Дополнительные сведения об условиях запроса и выражениях

  • Предотвращение блокировки запроса режимом отключения

Общие сведения о запросах на создание таблиц

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

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

Создание запроса на создание таблице включает следующие основные этапы:

  • Включите базу данных, если она не подписана или не находится в надежном расположении. В противном случае не удастся выполнять запросы на изменение (добавление, обновление и создание таблиц).

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

    Дополнительные сведения о нормализации данных см. в статье Основные сведения о создании баз данных.

  • Преобразуйте запрос на выборку в запрос на создание таблицы, выберите расположение для новой таблицы и выполните запрос.

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

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

Создание запроса на создание таблицы

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

Создание запроса на выборку

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

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

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

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

  4. При необходимости добавьте выражения в строку Поле.

  5. Вы также можете добавить любые условия в строку Условие отбора на бланке.

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

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

Преобразование запроса на выборку

  1. Откройте запрос на выборку в Конструкторе или перейдите в Конструктор. В Access это можно сделать несколькими способами:

    • Если запрос открыт в режиме таблицы, щелкните правой кнопкой мыши вкладку документа запроса и выберите пункт Конструктор.

    • Если запрос закрыт, щелкните его правой кнопкой мыши в области навигации и выберите в контекстном меню пункт Конструктор.

  2. На вкладке Конструктор в группе Тип запроса нажмите кнопку Создание таблицы.

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

  3. В поле Имя таблицы введите имя новой таблицы.

    или

    Щелкните стрелку вниз и выберите имя существующей таблицы.

  4. Выполните одно из указанных ниже действий.

    • Помещение новой таблицы в текущую базу данных    

      1. Выберите параметр Текущая база данных, если он еще не выбран, и нажмите кнопку ОК.

      2. Нажмите кнопку " " и нажмите кнопку "Да", чтобы подтвердить операцию.

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

    • Помещение новой таблицы в другую базу данных    

      1. Щелкните элемент В другой базе данных.

      2. В поле Имя файла введите расположение и имя файла другой базы данных.

        или

        Нажмите кнопку Обзор, в новом диалоговом окне Создание таблицы укажите расположение другой базы данных и нажмите кнопку ОК.

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

      4. Нажмите кнопку " " и нажмите кнопку "Да", чтобы подтвердить операцию.

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

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

Дополнительные сведения об условиях запроса и выражениях

Ранее в статье упоминались условия запроса и выражения. Условие запроса — это правило, служащее для определения записей, которые должен возвращать запрос. Условия используются, если вам нужны не все записи в наборе данных. Такое условие, как "Воронеж" OR "Рязань" OR "Москва", возвращает только записи для этих городов.

Дополнительные сведения об использовании условий см. в статье Примеры условий запроса.

Выражение — это сочетание математических или логических операторов, констант, функций и имен полей, элементов управления и свойств, результатом вычисления которого является одно значение. Выражения используются для получения данных, которые не хранятся непосредственно в таблице. Например, выражение [ЦенаЗаЕдиницу]*[Количество] умножает значение в поле "ЦенаЗаЕдиницу" на значение в поле "Количество". Выражения можно использовать различными способами, и процесс их создания и работы с ними может быть довольно сложным.

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

Дополнительные сведения о создании и использовании выражений см. в статье Создание выражений.

Предотвращение блокировки запроса режимом отключения

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

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

Данное действие или событие заблокировано в режиме отключения.

Если выводится это сообщение, сделайте следующее:

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

Создание запроса, формы или отчета в Access

Доступ к быстрому запуску

Доступ к обучению

Доступ к быстрому запуску

Доступ к быстрому запуску

Создание запроса, формы или отчета

  • Создать базу данных
    Статья
  • Добавить первичный ключ
    Статья
  • Сделайте резервную копию вашей базы данных
    Статья
  • Создание запроса, формы или отчета
    Статья
  • Учить больше
    Статья

Следующий: Введение в доступ

Создать запрос выбора

Создайте запрос, чтобы сосредоточиться на конкретных данных.

  1. Выберите Создать > Мастер запросов .

  2. Выберите Простой запрос , а затем OK .

  3. Выберите таблицу, содержащую поле, добавьте нужные Доступные поля в Выбранные поля и выберите Далее .

  4. Выберите, хотите ли вы открыть запрос в режиме таблицы или изменить запрос в режиме конструктора, а затем выберите Готово .

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

Создать разделенную форму

Разделенная форма дает вам два представления данных одновременно — представление таблицы и представление формы. Например, используйте представление таблицы, чтобы найти запись, и представление формы, чтобы изменить ее.

  1. В области навигации выберите таблицу или запрос, содержащий данные.

  2. Выберите Создать > Дополнительные формы > Разделить форму .

Дополнительные сведения см. в разделе Создание разделенной формы.

Создать отчет

  1. Выберите Создать > Мастер отчетов .

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

  3. Дважды щелкните поле, по которому вы хотите выполнить группировку, и выберите Далее .

  4. Завершите остальные экраны мастера и выберите Готово .

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

Создайте простой запрос на выборку

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

Если вы хотите использовать образец базы данных Northwind, чтобы узнать больше о том, как работают запросы, см. статью Введение в запросы.

В этой статье

  • Обзор

  • Используйте мастер запросов для создания запроса на выборку

  • Создайте запрос, работая в представлении «Дизайн»

Обзор

Когда вы хотите использовать данные, вы редко хотите использовать все данные из одной таблицы. Например, когда вы хотите использовать данные из таблицы «Контакты», вы обычно хотите просмотреть одну конкретную запись или, может быть, просто номер телефона. Иногда вам нужно объединить данные из нескольких таблиц, например, объединить информацию о клиенте с информацией о заказе. Чтобы выбрать данные, которые вы хотите использовать, вы используете запрос выбора.

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

Преимущества использования запроса

Запрос позволяет:

  • Просмотр данных только из тех полей, которые вам интересны. Когда вы открываете таблицу, вы видите все поля. Запрос — это удобный способ сохранить набор полей.

    Примечание. Запрос указывает только на данные, но не сохраняет данные. Когда вы сохраняете запрос, вы не сохраняете копию данных.

  • Объединение данных из нескольких источников данных. Таблица обычно отображает только те данные, которые в ней хранятся. Запрос позволяет выбирать поля из различных источников и указывать, как информация должна быть объединена.

  • Использовать выражения как поля. Например, вы можете использовать функцию «Дата» в качестве поля или функцию «Формат» с полем, чтобы контролировать способ форматирования данных из поля в результатах запроса.

  • Просмотр записей, соответствующих указанным вами критериям. Когда вы открываете таблицу, вы видите все записи. Запрос — это удобный способ сохранить набор записей.

Основные шаги для создания запроса на выборку

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

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

  2. Укажите поля, которые вы хотите включить из источников данных.

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

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

Используйте мастер запросов для создания запроса на выборку

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

Прежде чем начать

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

Дополнительные сведения о создании связей между таблицами см. в статье Руководство по связям между таблицами.

Используйте мастер запросов

  1. На вкладке Создать в группе Запросы щелкните Мастер запросов .

  2. В диалоговом окне Новый запрос щелкните Мастер простых запросов , а затем щелкните OK .

  3. Далее вы добавляете поля. Вы можете добавить до 255 полей из 32 таблиц или запросов.

    Для каждого поля выполните следующие два шага:

    1. В разделе Таблицы/запросы щелкните таблицу или запрос, содержащий поле.

    2. В разделе Доступные поля дважды щелкните поле, чтобы добавить его в Список выбранных полей . Если вы хотите добавить в запрос все поля, нажмите кнопку с двойной стрелкой вправо (>>).

    3. Когда вы добавите все нужные поля, нажмите Далее .

  4. Если вы не добавляли числовые поля (поля, содержащие числовые данные), перейдите к шагу 9.. Если вы добавили числовые поля, мастер спросит, хотите ли вы, чтобы запрос возвращал подробные или сводные данные.

    Выполните одно из следующих действий:

    1. Если вы хотите просмотреть отдельные записи, щелкните Подробности , а затем щелкните Далее . Перейдите к шагу 9.

    2. Если вы хотите просмотреть сводные числовые данные, такие как средние значения, нажмите 9.0032 Сводка , а затем щелкните Параметры сводки .

  5. В диалоговом окне Параметры сводки укажите, какие поля вы хотите суммировать и как вы хотите суммировать данные. Перечислены только числовые поля.

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

    1. Сумма     Запрос возвращает сумму всех значений поля.

    2. Avg     Запрос возвращает среднее значение поля.

    3. Min     Запрос возвращает наименьшее значение поля.

    4. Макс.     Запрос возвращает наибольшее значение поля.

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

  7. Щелкните OK , чтобы закрыть диалоговое окно Параметры сводки.

  8. Если вы не добавили в запрос поле даты/времени, перейдите к шагу 9. Если вы добавили в запрос поле даты-времени, мастер запросов спросит, как бы вы хотели сгруппировать значения даты. Например, предположим, что вы добавили в запрос числовое поле («Цена») и поле даты/времени («Время_транзакции»), а затем указали в поле Параметры сводки диалоговое окно, в котором вы хотите увидеть среднее значение числового поля «Цена». Поскольку вы включили поле даты/времени, вы можете рассчитать сводные значения для каждого уникального значения даты/времени, для каждого дня, для каждого месяца, для каждого квартала или для каждого года.

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

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

  9. На последней странице мастера дайте название запросу, укажите, хотите ли вы открыть или изменить запрос, а затем нажмите Готово .

    Если вы решите открыть запрос, запрос отобразит выбранные данные в режиме таблицы. Если вы решите изменить запрос, запрос откроется в представлении «Дизайн».

Верх страницы

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

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

Создать запрос

  • Шаг 1. Добавьте источники данных

  • Шаг 2. Присоединитесь к связанным источникам данных

  • Шаг 3: Добавьте поля вывода

  • Шаг 4. Укажите критерии

  • Шаг 5. Обобщите данные

  • Шаг 6: Просмотрите результаты

Шаг 1. Добавьте источники данных

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

  1. На вкладке Создать в группе Другие щелкните Дизайн запроса .

  2. Дважды щелкните каждый источник данных, который вы хотите использовать, или выберите каждый источник данных, а затем нажмите Добавить .

Автоматические соединения

Если при добавлении источников данных между источниками уже определены отношения, эти отношения автоматически добавляются в запрос как соединения. Объединения указывают, как следует объединять данные из связанных источников. Access также автоматически создает соединение между двумя таблицами, если в них есть поля с совместимыми типами данных и одно поле является первичным ключом.

Возможно, вы захотите настроить объединения, которые создает Access. Access определяет, какой тип объединения создать, на основе отношения, которое представляет объединение. Если Access создает соединение, но не имеет определенной связи, Access создает внутреннее соединение.

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

Использовать один и тот же источник данных несколько раз

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

При повторном добавлении источника данных Access добавляет _1 к имени второго экземпляра. Например, если вы дважды добавили таблицу «Сотрудники», второй экземпляр будет называться «Сотрудники_1».

Шаг 2. Присоединитесь к связанным источникам данных

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

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

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

Добавить объединение

Изменить соединение

  1. Дважды щелкните объединение, которое вы хотите изменить.

    Появится диалоговое окно Свойства соединения .

  2. В диалоговом окне Свойства соединения просмотрите три параметра.

  3. Выберите вариант, который вы хотите использовать, а затем нажмите OK .

После того, как объединения готовы, вы добавляете поля вывода — поля, содержащие данные, которые вы хотите видеть в результатах запроса.

Шаг 3: Добавьте поля вывода 90 140

Вы можете легко добавить поле из любого источника данных, добавленного на шаге 1.

  • Чтобы добавить поле, перетащите поле из источника данных в верхней панели окна конструктора запросов вниз в строку Поле сетки макета в нижней панели окна конструктора запросов.

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

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

Использовать выражение в качестве поля вывода

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

  1. В пустом столбце сетки макета запроса щелкните правой кнопкой мыши строку Поле и выберите Масштаб в контекстном меню.

  2. В поле Zoom введите или вставьте свое выражение. Перед вашим выражением укажите имя, которое вы хотели бы использовать для вывода выражения, за которым следует двоеточие. Например, если вы хотите, чтобы выражение было помечено как «Последнее обновление», вы должны начать свое выражение с Последнее обновление: .

    Примечание. С помощью выражений можно делать самые разные вещи. Подробное объяснение выражений выходит за рамки этой статьи. Дополнительные сведения о создании выражения см. в статье Создание выражения.

Шаг 4. Укажите критерии

Этот шаг необязателен.

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

Укажите критерии для поля вывода

  1. В сетке оформления запроса, в Criteria Строка поля, которое содержит значения, которые вы хотите ограничить, введите выражение, которому должны удовлетворять значения поля, чтобы быть включенными в ваши результаты. Например, если вы хотите ограничить запрос таким образом, чтобы в нем записывались только те значения, в которых значением поля «Город» является Лас-Вегас, введите Лас-Вегас в строке Критерии под этим полем.

    Многие примеры критериев запроса для различных типов данных см. в статье Примеры критериев запроса.

  2. Укажите любые альтернативные критерии в строке или под строкой Критерии .

    Если указать альтернативные критерии, значение поля может соответствовать любому из перечисленных критериев и быть включено в результат запроса.

Несколько критериев поля

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

Укажите критерии, используя поле, которое вы не хотите выводить

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

  1. Добавьте поле в сетку дизайна.

  2. Снимите флажок в поле Показать строку для поля.

  3. Укажите критерии, как для поля вывода.

Шаг 5. Суммирование данных

Этот шаг необязателен.

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

Для суммирования данных в запросе используется строка Итого . По умолчанию строка Всего не отображается в представлении «Дизайн».

  1. Открыв запрос в представлении «Дизайн», на вкладке «Дизайн» в группе «Показать/скрыть» щелкните Итоги .

    Access отображает строку Всего в сетке дизайна запроса.


    Learn more

Только новые статьи

Введите свой e-mail

Видео-курс

Blender для новичков

Ваше имя:Ваш E-Mail: