首页 > 代码库 > 5.WHERE 子句

5.WHERE 子句

WHERE 子句用于规定选择的标准。

WHERE 子句

如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句。

语法

SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

下面的运算符可在 WHERE 子句中使用:

操作符描述
= 等于
<> 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于
BETWEEN 在某个范围内
LIKE 搜索某种模式

注释:在某些版本的 SQL 中,操作符 <> 可以写为 !=。

1.如:

mysql> select * from Persons where  City = ‘London‘;
+------+----------+-----------+---------------+--------+
| Id_P | LastName | FirstName | Address       | City   |
+------+----------+-----------+---------------+--------+
|    1 | Adams    | John      | Oxford Street | London |
+------+----------+-----------+---------------+--------+
1 row in set (0.00 sec)

筛选出城市是London的数据集

2.引号的使用

请注意,我们在例子中的条件值周围使用的是单引号。

SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。如果是数值,请不要使用引号。

文本值:

正确:

mysql> select * from Persons where  City = ‘London‘;
+------+----------+-----------+---------------+--------+
| Id_P | LastName | FirstName | Address       | City   |
+------+----------+-----------+---------------+--------+
|    1 | Adams    | John      | Oxford Street | London |
+------+----------+-----------+---------------+--------+
1 row in set (0.00 sec)

错误:
mysql> select * from Persons where  City = London;
ERROR 1054 (42S22): Unknown column ‘London‘ in ‘where clause‘

数值:

正确:

mysql> select * from Persons where Id_P = 1;
+------+----------+-----------+---------------+--------+
| Id_P | LastName | FirstName | Address       | City   |
+------+----------+-----------+---------------+--------+
|    1 | Adams    | John      | Oxford Street | London |
+------+----------+-----------+---------------+--------+
1 row in set (0.07 sec)

错误:

mysql> select * from Persons where Id_P =‘1‘;
+------+----------+-----------+---------------+--------+
| Id_P | LastName | FirstName | Address       | City   |
+------+----------+-----------+---------------+--------+
|    1 | Adams    | John      | Oxford Street | London |
+------+----------+-----------+---------------+--------+
1 row in set (0.00 sec)

虽然是正确的,但是在sql的语法中是错误的

其实这个问题,我在工作中已经犯过错误了,吃一堑,长一智

5.WHERE 子句