Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
otvety_bd2.doc
Скачиваний:
12
Добавлен:
26.09.2019
Размер:
542.72 Кб
Скачать

Предложение from

Применимо к: Microsoft Office Access 2003

Печать

Задает таблицы и запросы, содержащие выводящиеся в инструкции SELECT поля.

Синтаксис

SELECT список_полей FROM выражение_таблицы [IN внешняя_база_данных]

Инструкция SELECT, содержащая предложение FROM, включает в себя следующие компоненты.

АРГУМЕНТ

ОПИСАНИЕ

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

Имена полей, загружаемых вместе с любымипсевдонимами, статистическими функциями SQL, предикатами (ALL, DISTINCT, DISTINCTROW или TOP) или с любым другим параметром инструкции SELECT.

выражение_таблицы

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

внешняя_база_данных

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

Замечания

Наличие предложения FROM после инструкции SELECT обязательно.

Порядок таблиц, входящих в компонент выражение_таблиц, не имеет значения.

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

В следующем примере показано как извлечь данные из таблицы «Сотрудники».

SELECT Фамилия, Имя

FROM Сотрудники;

Предложение where

Применимо к: Microsoft Office Access 2003

Печать

Определяет, какие записи из таблиц, перечисленных в предложении FROM, обрабатываются инструкциями SELECT, UPDATE или DELETE.

Синтаксис

SELECT список_полей FROM выражение_таблицы WHERE условия_отбора

Инструкция SELECT, содержащая предложение WHERE, включает в себя следующие компоненты.

АРГУМЕНТ

ОПИСАНИЕ

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

Имя поля или полей, загружаемых вместе с любымипсевдонимами, предикатами (ALL, DISTINCT, DISTINCTROW или TOP) или с любым другим параметром инструкции SELECT.

выражение_таблицы

Имя таблицы или таблиц, из которых извлекаются данные.

условия_отбора

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

Замечания

Ядро базы данных Microsoft Jet выбирает записи, отвечающие условиям, указанным в предложении WHERE. Если предложение WHERE не задано, запрос возвращает все строки таблицы. Если в запросе указано несколько таблиц, но не задано предложение WHERE или JOIN, запрос генерируетдекартово произведение таблиц.

Включать предложение WHERE в инструкцию не обязательно, но если оно используется, то должно следовать за предложением FROM. Например, можно выбрать всех сотрудников в отделе продаж (WHERE Отдел = 'Продажи') или всех клиентов в возрасте от 18 до 30 лет (WHERE Возраст От 18 До 30).

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

WHERE аналогично предложению HAVING. Оно определяет выбираемую запись. После того как записи сгруппированы предложением GROUP BY, предложение HAVING также определяет отображаемую запись.

Предложение WHERE используется для исключения записей, которые не нужно сортировать с помощью предложения GROUP BY.

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

SELECT Фамилия, Зарплата

FROM Сотрудники

WHERE Зарплата > 52500;

Предложение WHERE может содержать до 40 выражений со ссылками на логические операторы (например, And и Or).

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

SELECT [Любимый ресторан клиента]

Задавая аргумент условия_отборалитералы даты следует представлять в американском формате, даже если американская версия ядра базы данных Microsoft® Jet не используется. Например, дата «10 мая 1996» записывается как 10/5/96 в Великобритании и как 5/10/96 в США. Не забывайте заключать литералы даты в знаки номера (#), как показано в приведенных ниже примерах.

Чтобы найти записи за 10 мая 1996 в базе данных Великобритании, используйте следующую инструкцию SQL.

SELECT *

FROM Заказы

WHERE ДатаПоставки = #5/10/96#;

Можно также воспользоваться функцией DateValue, распознающей международные параметры, установленные Microsoft Windows®. Например, используйте такой код для США.

SELECT *

FROM Заказы

WHERE ДатаПоставки = DateValue('5/10/96');

И следующий код — для Великобритании.

SELECT *

FROM Заказы

WHERE ДатаПоставки = DateValue('10/5/96');

 ПРИМЕЧАНИЕ.   Если столбец, указанный в строке условий отбора, относится к типу GUID, в условиях отбора используется немного другой синтаксис.

WHERE КодРеплики = {GUID {12345678-90AB-CDEF-1234-567890ABCDEF}}

Убедитесь, что фигурные скобки и дефисы расположены правильно.