查询语句基本格式:SELECT 列名/* FROM 表名 (WHERE 条件组合 )
示例数据表
1.查询所有
查询全部学生
select*fromstudent;
2.部分查询(查询一个或多个字段值)
查询所有姓名和年龄
selectSname,Sagefromstudent;
3.单条件查询
关键字where 表示条件,在where之后跟过滤的条件
下面的运算符可在WHERE 子句中使用:
- 比较运算符包括: = ,>,<,>=,<=,<>
- 逻辑运算符:NOT,AND,OR
- 确定范围运算符:BETWEEN AND, NOT BETWEEN AND
select*fromstudentwhereSage<18;
区间范围查询
select*fromStudentwhereSagebetween18and20;
集合方式查询
select*fromStudentwhereSagein('18','20');
4.多条件查询
and 关键字表示和(并且),需要两边条件同时满足
select*fromStudentwhereSsex='男'andSage>18
or 表示或 两边条件只要满足一个就可以
select*from表名whereSsex='女'orSclass='大一'
5.分组查询(分组函数)
group by 关键字表示分组,按照一个字段的值进行分组,相同的值组成一组 注意:分组函数一般与聚合函数一起使用
selectSsex,count(*)fromstudentgroupbySsex;
6.分组后筛选查询
Having 关键键表示条件,为分组函数的专用条件关键字跟在分组后面类似where条件
selectSsex,count(*)asaafromstudentgroupbySsexhaving aa>=1;
7.结果排序
order by 关键字表示排序,默认为正序排列(asc),倒序(desc)
select*fromStudentorderbySage
8.子条件查询
将一个查询结果当做条件来用,此种情况成为子条件查询
select*fromStudentwhereSage=(selectmax(Sage)fromStudent);
9.分页查询
使用关键字limit, 关键字之后如果为一个数字,则表示当前分页显示多少条数据。在关键字之后跟两个数字a,b,表示从a开始取b条数据。
从0开始取2条数据
select*fromStudentorderbySagelimit0,2
10.模糊查询
模糊查询LIKE 或NOT LIKE
select*from表名wherey_name like'%a%';
like 关键字表示模糊,后面跟'单引号' %模糊的内容%
- '%a%’表示只要该字段含有a字
- ‘a%’表示要模糊的字必须处于该字段的首位
- ‘%a’表示要模糊的字必须处于该字段末位