Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
учебник по аксес.doc
Скачиваний:
24
Добавлен:
14.11.2018
Размер:
1.62 Mб
Скачать

Select список полей

FROM список таблиц или запросов

[WHERE критерий отбора ];

Здесь SELECT, FROM, WHERE – ключевые слова. Конструкция WHERE … - не обязательна, поэтому она заключена в квадратные скобки. В самой команде эти квадратные скобки не пишутся.

Список полей определяет столбцы виртуальной таблицы (временного набора записей), создаваемой в результате выполнения запроса. В нем можно указывать имена полей и выражения для формирования вычисляемых полей. Если в запрос надо включить все поля таблицы или запроса, то можно указать символ “*”. Если в запрос включаются поля нескольких таблиц или запросов, то надо указывать уточненные имена полей в виде: имя таблицы. имя поля или [имя таблицы].[имя поля]. Квадратные скобки обязательны только в том случае, когда имя содержит пробелы, совпадает с ключевым словом или начинается с цифры.

Элементы списка полей разделяются запятыми.

Если в результате запроса должно быть сформировано вычисляемое поле, то оно в списке определяется так:

Выражение AS имя поля

Выражение описывает формулу для вычисления . Имя поля – это имя, присваиваемое новому полю. Оно будет помещено в заголовок столбца с вычисленными данными. Если имя созданного поля содержит пробел, то оно должно быть заключено в квадратные скобки.

Конструкция FROM … определяет источник данных для запроса. В ней перечисляются имена таблиц и запросов, из которых происходит отбор.

Если источником данных являются связанные таблицы, то источник данных описывается так:

FROM имя таблицы INNER JOIN имя связанной таблицы или запроса ON условие связывания.

Конструкция WHERE … присутствует в том случае, если запрос содержит условие отбора. В ней записывается логическое выражение, описывающее критерий отбора. Оно имеет значение «истина», если условие выполняется, и «ложь» - в противном случае. Критерий отбора может содержать одно или несколько условий, объединенных логическими операциями AND (логическое «И»), OR (логическое «ИЛИ»). Может также присутствовать логическая операция NOT (логическое отрицание).

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

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

GROUP BY список полей группировки.

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

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

HAVING критерий.

Для нашего примера запрос на SQL выглядит так:

SELECT Pred, Dt, Adr, Count(Izd) AS [Кол-во видов изделий ]

FROM Tabp INNER JOIN Tabv ON Tabp.Kodp=Tabv.Kodp

GROUP BY Pred, Dt, Adr, Tabv.Kodp

HAVING ((Dt> #12/31/1970#) AND (Mid([Adr],1,Instr([Adr],”,”)-1)=[Введите город]));

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

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

Результат выполнения запроса Запрос1 представлен на рисунке 5.

Рис. 5. Окно ввода параметра и результат выполнения запроса Запрос1.

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

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