位置:首页 > > SQLite AND/OR操作符

SQLite AND/OR操作符

SQLite的AND和OR运算符用于,编译多个条件来缩小所选数据在SQLite语句。这两个操作符被称为连接运算符。

这些运算符提供了一种手段,使多个不同的操作符比较,在相同的SQLite语句。

AND运算符:

AND运算符允许存在多个条件在SQLite语句的WHERE子句。虽然使用AND运算符,完整的条件将被假设当所有的条件都成立。例如,[condition1] 和 [condition2]为true,只有当这两个条件1和条件2都为真。

语法

WHERE子句的基本语法与操作如下:

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

可以结合使用AND运算符条件的N多。注意动作SQLite的语句,无论是事务或查询,所有分离的条件必须是为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语句列出了所有年龄大于或等于25和工资大于或等于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运算符也可用于多个条件结合起来,在SQLite语句的WHERE子句。虽然使用OR运算符,完整的条件将被假设时,至少有任何的条件为true。例 如,[condition1] OR [condition2] 为true,如果[condition1] 或[condition2] 结果为true。

语法

OR运算符 WHERE子句的基本语法如下:

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

可以结合N多的条件下使用OR运算符。对于一个要采取的行动通过SQLite的语句,无论它是一个事务或查询,任何一个分离的条件或必须是为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语句列出了所有年龄大于或等于25或薪金大于或等于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