SQL в Access: Клауза WHERE

Това е една от статиите в набора от статии за Access SQL. Тази статия описва как да напишете клауза WHERE и илюстрира с примери различни техники, които можете да използвате в клауза WHERE.

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

За общ преглед на Access SQL вж. статията Access SQL: основни понятия, речник и синтаксис.

В тази статия

Ограничаване на резултатите с помощта на критерии

Синтаксис на клаузата WHERE

Използване на клаузата WHERE за комбиниране на източници на данни

Ограничаване на резултатите с помощта на критерии

Когато искате да използвате данни, за да ограничите броя на записите, които се връщат в заявка, можете да използвате критерии. Критерият за заявка е подобен на формула – той е низ, който може да се състои от препратки към полета, оператори и константи. Критериите за заявки са тип израз.

Таблицата по-долу показва някои примерни критерии и обяснява как работят.

Критерии

Описание

>25 и <50

Този критерий се отнася за числово поле, като например "Цена" или "Наличност". Той включва само записите, където полето "Цена" или "Наличност" съдържа стойност, по-голяма от 25 и по-малка от 50.

DateDiff ("гггг"; [Дата на раждане]; Date()) > 30

Този критерий се отнася за поле за дата/час, като например "Дата на раждане". В резултата от заявката се включват само записите, в които броят години между датата на раждане на лицето и днешната дата е по-голям от 30.

Е Null

Този критерий може да се приложи към всеки вид поле, за да се покажат записите, където стойността на полето е Null.

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

Важно : Ако дадено поле се използва с агрегатна функция, не можете да зададете критерии за това поле в клаузата WHERE. Вместо това можете да използвате клауза HAVING, за да зададете критерии за агрегатни полета. За повече информация вж. статиите Access SQL: основни понятия, речник и синтаксис и Клауза HAVING.

Синтаксис на клаузата WHERE

Можете да използвате критерии за заявки в клаузата WHERE на команда SELECT.

Клаузата WHERE има следния основен синтаксис:

WHERE field = criterion

Да предположим например, че искате телефонният номер на клиент, но само помните само, че фамилното име на клиента е Христов. Вместо да преглеждате всички телефонни номера в базата данни, можете да използвате клауза WHERE, за да ограничите резултатите и да намерите по-лесно телефонния номер, който искате. Ако приемем, че фамилните имена се съхраняват в поле, което се нарича "Фамилно име", вашата клауза WHERE се показва по следния начин:

WHERE [LastName]='Bagel'

Забележка : Не е необходимо да базирате критериите във вашата клауза WHERE на съответствието на стойности. Можете да използвате други оператори за сравнение, като например по-голямо (>) или по-малко (<). Например WHERE [цена] > 100.

Използване на клаузата WHERE за комбиниране на източници на данни

Понякога искате да комбинирате източници на данни въз основа на полета, които съдържат съответстващи данни, но от различен тип. Например в една таблица има поле с данни от числов тип и искате да го сравните с поле в друга таблица, съдържащо данни от текстов тип.

Не можете да създадете връзка между полета с различни типове данни. За да комбинирате данни от два източника на данни въз основа на стойности в полета, които съдържат различни типове данни, можете да създадете клауза WHERE, която използва едно поле като критерий за другото поле, като използвате ключовата дума LIKE.

Да предположим например, че искате да използвате данни от таблица1 и таблица2, но само когато данните в поле1 (текстово поле в таблица1) съответстват на данните в поле2 (числово поле в таблица2). Клаузата WHERE ще изглежда горе-долу по следния начин:

WHERE field1 LIKE field2

За повече информация как да създавате критерии, които да се използват в клауза WHERE, вижте статията Примери на критерии за заявки.

Най-горе на страницата

Разширете уменията си
Преглед на обучението
Получавайте първи новите функции
Присъединете се към участниците в Office Insider

Беше ли полезна тази информация?

Благодарим ви за обратната връзка!

Благодарим ви за вашата обратна връзка. Изглежда, че ще бъде полезно да ви свържем с един от нашите агенти по поддръжката на Office.

×