位置:首页 > 数据库 > SQL在线教程 > SQL AND和OR运算符

SQL AND和OR运算符

SQL AND和OR运算符用于多个条件,以将数据结合起来的SQL语句。这两个操作符被称为连接运算符。

这些运算符提供一种手段以与在相同的SQL语句不同的运算符进行多重比较。

AND运算符:

AND运算允许多个条件在SQL语句中存在于WHERE子句。

语法

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

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

您可以将N多的条件使用于AND操作。对于将要采取的SQL语句的操作,无论是事务或查询,通过分隔的所有条件,并且必须是TRUE。

例子:

考虑CUSTOMERS表具有以下记录:

+----+----------+-----+-----------+----------+
| ID | NAME     | AGE | ADDRESS   | SALARY   |
+----+----------+-----+-----------+----------+
|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 |
|  2 | Khilan   |  25 | Delhi     |  1500.00 |
|  3 | kaushik  |  23 | Kota      |  2000.00 |
|  4 | Chaitali |  25 | Mumbai    |  6500.00 |
|  5 | Hardik   |  27 | Bhopal    |  8500.00 |
|  6 | Komal    |  22 | MP        |  4500.00 |
|  7 | Muffy    |  24 | Indore    | 10000.00 |
+----+----------+-----+-----------+----------+

下面是一个例子,这将从CUSTOMERS表获取薪水超过2000和年龄不到25年的客户的ID,姓名和薪水:

SQL> SELECT ID, NAME, SALARY 
FROM CUSTOMERS
WHERE SALARY > 2000 AND age < 25;

这将产生以下结果:

+----+-------+----------+
| ID | NAME  | SALARY   |
+----+-------+----------+
|  6 | Komal |  4500.00 |
|  7 | Muffy | 10000.00 |
+----+-------+----------+

OR 运算符:

OR运算符是用来将多个条件WHERE子句结合起来在SQL语句中。

语法

OR操作符在WHERE子句中的基本语法如下:

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

可以将N多的条件使用OR操作。对于将要采取的SQL语句操作,无论是一个事务或查询, 仅由OR隔开的任何一个条件必须是TRUE。

例子:

考虑CUSTOMERS表有以下记录:

+----+----------+-----+-----------+----------+
| ID | NAME     | AGE | ADDRESS   | SALARY   |
+----+----------+-----+-----------+----------+
|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 |
|  2 | Khilan   |  25 | Delhi     |  1500.00 |
|  3 | kaushik  |  23 | Kota      |  2000.00 |
|  4 | Chaitali |  25 | Mumbai    |  6500.00 |
|  5 | Hardik   |  27 | Bhopal    |  8500.00 |
|  6 | Komal    |  22 | MP        |  4500.00 |
|  7 | Muffy    |  24 | Indore    | 10000.00 |
+----+----------+-----+-----------+----------+

下面是一个例子,这将从CUSTOMERS表获取工资大于2000或年龄小于25的客户的ID,姓名和薪水:

SQL> SELECT ID, NAME, SALARY 
FROM CUSTOMERS
WHERE SALARY > 2000 OR age < 25;

这将产生以下结果:

+----+----------+----------+
| ID | NAME     | SALARY   |
+----+----------+----------+
|  3 | kaushik  |  2000.00 |
|  4 | Chaitali |  6500.00 |
|  5 | Hardik   |  8500.00 |
|  6 | Komal    |  4500.00 |
|  7 | Muffy    | 10000.00 |
+----+----------+----------+