跟王老师学MySQL:单表查询
2016-07-09 15:59
399 查看
跟王老师学MySQL:单表查询
查询指定字段
查询指定记录
带in关键字的查询
带between and关键字的查询
带like关键字的查询
查询空值
带and的多条件查询
带or的多条件查询
查询不重复记录
对查询结果进行排序
单表查询是指从一张表中查询所需要的数据。查询数据时,可以从一张表中查询数据,也可以从多张表中同时查询数据。两者的查询方式上有一定的区别。因为单表查询只在一张表上进行操作,所以查询比较简单。
一、查询所有字段
二、查询指定字段
查询数据时,可以在SELECT语句的“属性列表”中列出所要查询的字段。
WHERE子句可以用来指定查询条件
如果字段的值在集合中,则满足查询条件,该纪录将被查询出来。如果不在集合中,则不满足查询条件。
注:
各元素之间用逗号隔开
如果元素是字符型,需要加上单引号
如果字段的值在指定范围内,则满足查询条件,该纪录将被查询出来。
如果不在指定范围内,则不满足查询条件。
注:
取值1:表示范围起始值
取值2:表示范围终止值
范围边界包括取值1和取值2
(二)举例
查询age字段的值在25-29之间的记录
如果字段的值与指定的字符串相匹配,则满足查询条件,该纪录将被查询出来。
如果与指定的字符串不匹配,则不满足查询条件。
注:
字符串,必须加单引号或双引号
字符串可以是一个完整的字符串,也可以包括通配符的字符。
%:代表任意长度的字符串,长度可以为0,比如b%k,表示以b开头,以k结尾的任意长度的字符串
_:表示一个字符。b_k,表示以b开头,以k结尾的,长度为3的字符串
注:
is null 不能用= ’‘来代替
八、带AND的多条件查询
AND关键字可以用来联合多个条件进行查询。
使用AND关键字时,只有同时满足所有查询条件的记录会被查询出来。
如果不满足这些查询条件的其中一个,这样的记录将被排除掉。
(一)语法
主讲教师:王少华 QQ群号:483773664
学习内容
查询所有字段查询指定字段
查询指定记录
带in关键字的查询
带between and关键字的查询
带like关键字的查询
查询空值
带and的多条件查询
带or的多条件查询
查询不重复记录
对查询结果进行排序
单表查询是指从一张表中查询所需要的数据。查询数据时,可以从一张表中查询数据,也可以从多张表中同时查询数据。两者的查询方式上有一定的区别。因为单表查询只在一张表上进行操作,所以查询比较简单。
一、查询所有字段
(一)列出表的所有字段
(二)使用“*”查询所有字段
1 语法
1 | select * from 表名; |
2 举例
查询出表employee中记录所有的字段信息二、查询指定字段
查询数据时,可以在SELECT语句的“属性列表”中列出所要查询的字段。
举例
从表employee中查询出num、name、sex和homeaddr4个字段的信息1 | select num, name ,sex,homeaddr from employee; |
三、查询指定记录
SELECT语句中可以设置查询条件。WHERE子句可以用来指定查询条件
(一)语法
1 | WHERE 条件表达式 |
(二)举例
查询num为3的记录1 | select * from employee where num=3; |
(三)查询条件
where 子句常用的查询条件有很多。如下图所示四、带in 关键字的查询
in关键字可以判断某个字段的值是否在指定的集合中。如果字段的值在集合中,则满足查询条件,该纪录将被查询出来。如果不在集合中,则不满足查询条件。
(一)语法
1 | [ NOT ] IN ( 元素1, 元素2, …, 元素n ) |
各元素之间用逗号隔开
如果元素是字符型,需要加上单引号
(二)举例
查询name字段的取值,不是张三和李四的记录1 | select * from employee where name not in ( '张三' , '李四' ); |
五、带Between and的范围查询
BETWEEN AND关键字可以判读某个字段的值是否在指定的范围内。如果字段的值在指定范围内,则满足查询条件,该纪录将被查询出来。
如果不在指定范围内,则不满足查询条件。
(一)语法
1 | [ NOT ] BETWEEN 取值1 AND 取值2 |
取值1:表示范围起始值
取值2:表示范围终止值
范围边界包括取值1和取值2
(二)举例
查询age字段的值在25-29之间的记录1 | select * from employee where age between 25 and 29; |
六、带like的字符配置查询
LIKE关键字可以匹配字符串是否相等。如果字段的值与指定的字符串相匹配,则满足查询条件,该纪录将被查询出来。
如果与指定的字符串不匹配,则不满足查询条件。
(一)语法
1 | [ NOT ] LIKE '字符串' |
字符串,必须加单引号或双引号
字符串可以是一个完整的字符串,也可以包括通配符的字符。
%:代表任意长度的字符串,长度可以为0,比如b%k,表示以b开头,以k结尾的任意长度的字符串
_:表示一个字符。b_k,表示以b开头,以k结尾的,长度为3的字符串
(二)举例
查询homeaddr字段,以浙江开头,以州结尾的记录1 | select * from employee wherehomeaddr like '浙江%州' ; |
七、查询空值
IS NULL关键字可以用来判断字段的值是否为空值(NULL)(一)语法
1 | IS [ NOT ] NULL |
(二)举例
查询记录中sex字段为空值的记录1 | select * from employeewhere sex is null ; |
is null 不能用= ’‘来代替
八、带AND的多条件查询
AND关键字可以用来联合多个条件进行查询。
使用AND关键字时,只有同时满足所有查询条件的记录会被查询出来。
如果不满足这些查询条件的其中一个,这样的记录将被排除掉。
(一)语法
1 | 条件表达式1 AND 条件表达式2 [… AND 条件表达式n ] |