Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Лекция 4. Создание запросов

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

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

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

Для создания запроса с помощью мастера нужно:

1. Перейти во вкладку З апросы и выбрать кнопку Создать/Простой запрос;

2. Из предложенного списка выбрать нужные для запроса поля таблицы;

3. Выбрать тип запроса: подробный (вывод каждого поля, каждой записи) или итоговый. Во втором случае можно определить функции для подсчета итогов: SUM, AVG, MIN, MAX.

ПРЕИМУЩЕСТВОМ Мастера является возможность получения результата при минимуме значений о механизме его получения. Однако Мастер не позволяет задать условия выборки.

 

Окно Конструктора запросов

Для вызова конструктора ® Запросы/Создать/Конструктор.

Access предложит выбрать таблицу или запрос, на основе которого будет осуществляться выборка (нужно выбрать и Добавить).

Запрос 1: запрос на выборку.
Бланк-запрос
Схема данных
Телефонно-адресная

книга

 

Фамилия

Имя

Отчество

 

 

Поле      
Имя таблицы      
Сортировка      
Вывод на экран   
Условия отбора      
или      

 

В бланке запроса каждая строка выполняет определенную функцию:

Поле. В этой строке помещаются те поля, используемые для создания запроса;

Имя таблицы – показывает, из какой таблицы выбрано данное поле;

Сортировка – указывает тип сортировки информации, возвращаемой в запросе (от А до Я или от Я до А);

Вывод на экран – определяет, выводить ли данное поле в результатах выборки;

Условия отбора – в этой строке задаются критерии поиска.

 

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

В MS Access существует два варианта выбора полей результирующей таблицы:

Для добавления полей можно:

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

  Телефонно-адресная  
  Фамилия Имя Отчество  
Поле Фамилия  
Имя таблицы Телефон-Адрес  
Сортировка    
Вывод на экран   
         

 

2. Механизм перенести и оставить. То есть, в таблице в схеме данных выделить поле и мышью перетащить его в бланк запроса. Чтобы выделить несколько полей таблицы, используются клавиши Ctrl и Shift.

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

Тел-адр. книга.*. Что означает, что выбраны все поля таблицы.

У данного метода есть преимущество по сравнению с методом последствием перетаскивания всех полей таблицы в бланк запроса. Если в таблицу «Тел. - адр.кн.» вы добавите еще поле, то и в запросе оно будет присутствовать.

Для удаления:

отдельного поля из бланка запроса нужно выделить столбец и Delete.

всех полейПравка/Очистить бланк.

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

Для запуска запроса применяется кнопка Запуск или кнопка Вид.

Данный запрос можно сохранить: (Файл/Сохр. Как экспорт/ в тек. Базе данных/Имя).

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

Поле Фамилия Имя Страна
Имя поля Тел. адр. книга Тел.-адр. книга  
Сортировка      
Вывод на экран Ö Ö Ö
Условие отбора     «Россия»
или      

 

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

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

Таблицы

Заказы

Клиенты

Выделение имени любой из таблиц откроет в следующем окне список полей данной таблицы

 

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

 

Поле Ф.И.О. Заказано Дата
      between dateadd ("d"; -10; date ()) and date ()

 


 

Примеры задания условий в запросах:

- в первые пять дней любого месяца

 

- в последний день каждого месяца

in (1;3;5)
day ([Дата])

month ([Дата])
31 1 or 3 or 5 or 7
  4 or 6…
   

 

- right ([Код заказа], 2) = "99" - код заказа заканчивается на 99;

- left ([Телефон], 3) = 777 – начинается на 777;

- Len ([Фамилия]) > val (10) – фамилия > 10 символов;

- < date () – 20 – ранее, чем на 20 дней назад;

- Between dateadd ("d"; - 3; Date ()) and Date () - в ближайшие 3 дня

- Between date () and dateadd ("m"; 3; отобразить заказы, исполнение которых от текущей даты до 3-х месяцев вперед;

- Dateadd ("d"; 3; 01.01.99) – на 3 дня вперед;

- Dateadd ("d"; -3; 01.01.99) – вернет 31.12.98;

- Year ([Дата заказа]) = year (date) and month ([Дата заказа]) = month (date ());

- Dateadd ("m"; - 2; Date ()) – дата 22.12.00

- Dateadd ("d"; -17; Date ()) – 05.02.01.

Для полей, допускающих пустые значения:

is NULL - пустые поля;

is not NULL – те строки, в которых есть какие-либо значения.

Использование операторов or и and:

1) одно поле с or

Поле Город
Усл. отбора Москва
Или   Украина


2) одно поле с and

 

Поле Город
Усл. отбора "Москва" and "Днепропетровск"

 

3) два поля с or:

Поле Город Страна
Усл. отбора Днепропетровск  
Или   Украина

 

4) два поля с and:

Поле Город Страна
Усл. отбора Днепропетровск Украина

 

5) три поля с and и or:

Поле Город Страна Национальность
Усл. Днепропетровск Украина  
    Россия Украинец

 

Встроенные функции

Во втором окне открывается список категорий функции (Дата/Время, Финансовые, Математические и т.д.), а в третьем окне – список самих функций.

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

Кроме условий в запросах можно (в запросах вычислить) задавать выражения полей.

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

Выражение 1: year (date ()) – year ([Дата рождения]);

Слово " Выражение 1 " нужно заменить словом "Возраст", так как оно будет выводиться в качестве названия столбца.

Подсчитать сумму продажи:

Сумма: [Цена]&[Продано].

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

Поле Условие
Возраст: year (date()) -year ([Дата рождения])

 
< 35

 

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

Покупатели: [Фамилия]&[Имя]&[Отчество]

<== предыдущая лекция | следующая лекция ==>
Лекция 3. Фильтрация данных | Лекция 5. Формы
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 546; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.037 сек.