请稍候,加载中....

SQL WHERE 子句

WHERE 子句用于过滤记录。

SQL WHERE 子句

WHERE 子句用于提取那些满足指定条件的记录。

SQL WHERE 语法

SELECT column_name,column_name
FROM table_name
WHERE column_name operator value;

 


WHERE 子句示例

在猿变手册教程中,我们将使用 yuanbian 样本数据库。

articles表数据示例

+----+--------------+----------+--------+---------------------+
| id | title        | author   | a_type |      pub_date       |
+----+--------------+----------+--------+---------------------+
| 1  | hadoop简介    |   大猿   |   311  | 2003-01-05 11:23:00 |
| 2  | python元类    |   小猿   |   163  | 2003-01-11 13:00:01 |
| 3  | HTML基础      |   猿大头  |  497  | 2004-03-09 12:00:00 |
| 4  | JavaScript   |    猿媛   |   20   | 2005-11-3 17:34:12 |
| 5  | ETL快速入门    |   猿媛   |    3   | 2005-11-7 18:40:00 |
+----+--------------+----------+--------+---------------------+

where 子句筛选示例

下面的 SQL WHERE 子句 从 "articles" 表中选取author为 "猿媛" 的所有网站:

SELECT * FROM articles WHERE author='猿媛';

执行输出结果:

+----+--------------+----------+--------+---------------------+
| id | title        | author   | a_type |      pub_date       |
+----+--------------+----------+--------+---------------------+
| 4  | JavaScript   |    猿媛   |   20   | 2005-11-3 17:34:12 |
| 5  | ETL快速入门    |   猿媛   |    3   | 2005-11-7 18:40:00 |
+----+--------------+----------+--------+---------------------+

文本字段 vs. 数值字段

SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。

在上个实例中 'CN' 文本字段使用了单引号。

如果是数值字段,请不要使用引号。

数值字段实例

SELECT * FROM Websites WHERE id=1;

执行输出结果:

+----+--------------+----------+--------+---------------------+
| id | title        | author   | a_type |      pub_date       |
+----+--------------+---------+--------+----------------------+
| 1  | hadoop简介    |   大猿   |   311  | 2003-01-05 11:23:00 |
+----+--------------+----------+--------+---------------------+

 


WHERE 运算符

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

运算符 描述
= 等于
<> 不等于。注释:在 SQL 的一些版本中,该操作符可被写成 !=
> 大于
< 小于
>= 大于等于
<= 小于等于
BETWEEN 在某个范围内
LIKE 搜索某种模式
IN 指定针对某个列的多个可能值

Python学习手册-