SQLite Операторы AND/OR

Операторы SQLiteANDиORиспользуются для объединения нескольких условий, чтобы сузить данные, выбираемые в инструкциях SQLite. Эти два оператора называются конъюнктивными операторами.

Эти операторы позволяют выполнять множественные сравнения между разными операторами в одной инструкции SQLite.

Оператор AND

ANDОператор позволяет задавать несколько условий в предложении WHERE инструкции SQL. При использовании оператора AND всё условие истинно только тогда, когда все условия истинны. Например, [condition1] AND [condition2] истинно только тогда, когда и condition1, и condition2 истинны.

Синтаксис

Базовый синтаксис оператора AND с предложением WHERE выглядит следующим образом:

SELECT column1, column2, columnN 
FROM table_name
WHERE [condition1] AND [condition2]...AND [conditionN];

Вы можете использовать оператор AND для объединения N условий. Действие, которое должна выполнить инструкция SQLite, будь то транзакция или запрос, требует, чтобы все условия, разделённые AND, были TRUE.

Пример

Предположим, таблица COMPANY содержит следующие записи:

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0

Следующая инструкция SELECT перечисляет все записи, где AGE больше или равен 25andand SALARY больше или равен 65000.00:

sqlite> SELECT * FROM COMPANY WHERE AGE >= 25 AND SALARY >= 65000;
ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0

Оператор OR

ORОператор также используется для объединения нескольких условий в предложении WHERE инструкции SQL. При использовании оператора OR всё условие истинно, если истинно хотя бы одно из условий. Например, [condition1] OR [condition2] истинно, если истинно либо condition1, либо condition2.

Синтаксис

Базовый синтаксис оператора OR с предложением WHERE выглядит следующим образом:

SELECT column1, column2, columnN 
FROM table_name
WHERE [condition1] OR [condition2]...OR [conditionN]

Вы можете использовать оператор OR для объединения N условий. Действие, которое должна выполнить инструкция SQLite, будь то транзакция или запрос, требует только, чтобы любое одно из условий, разделённых OR, было TRUE.

Пример

Предположим, таблица COMPANY содержит следующие записи:

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0

Следующая инструкция SELECT выводит все записи, в которых AGE больше или равно 25orand SALARY больше или равно 65000.00:

sqlite> SELECT * FROM COMPANY WHERE AGE >= 25 OR SALARY >= 65000;
ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
Другие расширения