SQL Where Клауза за множество условия

Sql Where Klauza Za Mnozestvo Uslovia



Базите данни са важен градивен елемент на съвременните приложения. Базите данни обаче съхраняват огромно количество данни. Следователно имаме нужда от начини да филтрираме данните и да извличаме само необходимите записи.

Един от най-разпространените методи за филтриране на данни в SQL е използването на клаузата WHERE. Клаузата WHERE в SQL ни позволява да филтрираме записите въз основа на дадено условие. Тази клауза може да посочи едно или повече условия, които ни позволяват да филтрираме записите, които се връщат от оператор SELECT.







Този урок изследва как да работите с клаузата WHERE и да посочите множеството условия в една клауза, което позволява по-контролирано и детайлно филтриране на данни.



Основи на клаузата WHERE на SQL

Нека започнем с основите и да научим основите на работата с клаузата WHERE в SQL.



Да предположим, че имаме таблица, която съдържа информация за страната, и извличаме само страните с население (на квадратен километър), което е по-голямо от 100 и площ, която е по-голяма от 2 000 000.





Можем да изпълним запитване, както следва:

ИЗБЕРЕТЕ * ОТ sample_db.country_information
КЪДЕ област > 2 000 000 И население_на_км_кв > 100 ;


В предишния пример използваме клаузата WHERE и оператора AND, за да зададем две условия. Използването на оператора AND казва на SQL, че и двете условия ТРЯБВА да бъдат изпълнени, за да бъде записът включен в набора от резултати.



Това трябва да върне само държавите, които отговарят на посочените критерии, както следва:


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

SQL оператор ИЛИ

Операторът OR ни позволява да посочим множеството условия в клауза WHERE. И все пак, за разлика от оператора И, който изисква всички условия да бъдат изпълнени, операторът ИЛИ изисква поне едно от условията да бъде изпълнено.

Например, за да изберем държавите, чиято площ е по-голяма от 2000 000 или население (на квадратен километър), което е по-голямо от 100, можем да изпълним следната заявка:

ИЗБЕРЕТЕ * ОТ sample_db.country_information
КЪДЕ област > 2 000 000 ИЛИ население_на_км_кв > 100 ;


В този случай заявката трябва да върне резултатите, както следва:

SQL IN оператор

Можем също да използваме оператора IN, за да посочим множеството стойности за колона. Например, за да изберем държавите, чието име включва низовете „United States“ и „Russia“, можем да изпълним заявката, както следва:

ИЗБЕРЕТЕ * ОТ sample_db.country_information
КЪДЕ държава В ( 'Съединени щати' , 'Русия' ) ;


Резултат:

SQL НЕ оператор

Операторът NOT ни позволява да отхвърлим дадено условие.

Например, изберете страните, които нямат посочената площ и популярни на кв. км:

ИЗБЕРЕТЕ * ОТ sample_db.country_information
КЪДЕ НЕ област > 2 000 000 И население_на_км_кв > 100 ;


Резултат:

SQL множество оператори

Можем също да комбинираме множеството оператори, за да зададем по-сложни условия.

ИЗБЕРЕТЕ * ОТ sample_db.country_information
КЪДЕТО ( информация за_страна.област > 2 000 000 И население_на_км_кв > 100 ) ИЛИ държава = 'Китай' ;


Изход:


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

Заключение

Научихме как да използваме клаузата WHERE, за да посочим множеството условия в SQL. Освен това разгледахме операторите AND, OR, IN и NOT и открихме как да ги комбинираме, за да създадем по-сложни условия.