《MySQL必知必会学习笔记》过滤数据

来源:互联网 发布:考勤机已删除数据恢复 编辑:程序博客网 时间:2024/06/05 11:16

第六章:过滤数据,即where关键字的使用

在实际过程中,我们并不需要将所有的数据显示出来,只会将我们感兴趣的行数据显示出来,例如:在老师想统计考试成绩在90~100分这个区间的有哪些人?就需要过滤数据。

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

语法:
SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

其中的运算符包括如下(图来源于:http://www.w3school.com.cn/sql/sql_where.asp):

实践例子如下:
大于和等于号的运用如下:

不等于号的运用如下:

between and的运用如下:

where语句高级用法

where的用法还是比较常用的,上面只是对where关键字的简单用法进行了简单的介绍。下面将对where语句的稍微复杂一点的用法进行介绍。

where and or的联合使用

在我们过滤数据的过程中,可能条件不止一个,这个时候就需要 将过滤条件用 and、or来连接了。

select * from student where score=80 and name='rang';//这样就得到了表中 score=80且name是rang的数据了。

上面是and关键字将过滤条件的使用方法。or关键字的用法与and是一样的。

select * from student where score>=80 or name='A';

实践操作截图如下:

where in 的联合使用

in 操作符用来指定条件范围,范围中的每一个条件都可以进行匹配。in取合法值的由逗号分隔的清单,全部括在圆括号中。

select * from student where score in (60,80);

in操作符的优点如下:

  • 在使用长的合法选项清单时,in操作符的语法更清楚且更直观。
  • 在使用in时,计算的次序更容易管理(因为使用的操作符更少)
  • in操作符一般比or操作符清单更快。
  • in最大的优点是可以包含其他的select语句,使得能够更动态地建立where语句。

where not 的联合使用

where子句中的not操作符有且只有一个功能,那就是否定它之后所跟的任何条件。

select * from student where not in (60,80);//含义就是将score除了60和80的其它成绩过滤出来。

小结

以上对where子句进行了介绍。
其中包括where的简单应用;例如:

select * from student where score>60;

还介绍了 where 与操作符 and or not in 的应用。例如

select * from student where score>60 and name='A';select * from student where score=80 or name='B';select * from student where score in (60,80);select * from student where score not in (60,80);
1 0