Дополнительные сведения

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

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

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

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

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

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

SELECT Фамилия, Оклад

FROM Сотрудники

WHERE Оклад > 810000;

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

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

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

При указании аргумента условиеОтбора литералы даты (символы дат) должны вводиться в американском формате, даже если используется неамериканская версия ядра базы данных Jet. Например, дата 10 мая 1996 года записывается в России как 10.05.96, а в США как 5/10/96. Обязательно заключите даты в символы «решетки» (#), как показано в следующих примерах.

Для отбора записей с этой датой в российской базе данных необходимо использовать следующую инструкцию 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 ReplicaID = {GUID {12345678-90AB-CDEF-1234-567890ABCDEF}}

Фигурные скобки и дефисы являются обязательными.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: