mysql查询语句
目录
1.多个字段查询
2.条件查询
3.模糊查询
4.排序查询
5分组查询
6.分页查询
7.内连接查询
8.外连接查询
9.子查询
1.1 多个字段查询
1.2: select 字段名1,字段名2,…from 表名;
1.3: 注意:当查询所有字段的时候,可以使用*来替代字段列表(公司不建议使用)
1.2: select 字段名1,字段名2,…from 表名;
1.3: 注意:当查询所有字段的时候,可以使用*来替代字段列表(公司不建议使用)
2.1.条件查询
2.2: where 子句后跟条件
2.3:案例 select * from st where age in(22,25,28);
2.2: where 子句后跟条件
2.3:案例 select * from st where age in(22,25,28);
3.1:模糊查询
3.2:关键字:like
3.3: 占位符:_单个任意字符
%多个任意字符
3.4:查询单个
select *from student where name like’ _’;
3.5: 查询多个
select * from student where name like ’ __’;
3.6: 查询第二个
select * from student where name like '%二%;
3.2:关键字:like
3.3: 占位符:_单个任意字符
%多个任意字符
3.4:查询单个
select *from student where name like’ _’;
3.5: 查询多个
select * from student where name like ’ __’;
3.6: 查询第二个
select * from student where name like '%二%;
4.1:排序查询
4.2:语法:order by 子句
4.3: ASC: 升序,默认的 DESC:降序
4.4:注意:如果有多个排序,则当前边的条件值一样时,才会判断第二个条件
4.5:案例:select * from student order by past ASC,english DESC;
4.2:语法:order by 子句
4.3: ASC: 升序,默认的 DESC:降序
4.4:注意:如果有多个排序,则当前边的条件值一样时,才会判断第二个条件
4.5:案例:select * from student order by past ASC,english DESC;
5.1:分组查询
5.2:语法 grounp by 分组字段;
5.3: 注意 分组之后查询的字段: 分组字段,聚合函数
5.4:案例:分组查询出平均值
select sex,AVG(english),from student group by sex;
5.2:语法 grounp by 分组字段;
5.3: 注意 分组之后查询的字段: 分组字段,聚合函数
5.4:案例:分组查询出平均值
select sex,AVG(english),from student group by sex;
6.1:分页查询
6.2:语法 limit开始的索引,每页查询的条数
6.3:公式:web做分页查询需要的公式:开始的索引=(当前的页码-1) * 每页显示的条数
6.4:公式案例:查询5条数据,第一页是1-5 查询出第二页数据?
select * from student limit(2-1) 5, 5;
6.2:语法 limit开始的索引,每页查询的条数
6.3:公式:web做分页查询需要的公式:开始的索引=(当前的页码-1) * 每页显示的条数
6.4:公式案例:查询5条数据,第一页是1-5 查询出第二页数据?
select * from student limit(2-1) 5, 5;
7.1:内连接查询
7.2:内连接查询的思维逻辑:从哪些表中查询数据,条件是什么,查哪些字段
7.3:隐式内连接
7.4: 理解使用where 条件消除无用的数据
7.5:显示内连接
7.6:关键词 inner join
7.7:语法: select 字段列表 form 表名列表 inner join 表名 on 条件
7.8:注意事项:inner是可选,可用可不用的
7.2:内连接查询的思维逻辑:从哪些表中查询数据,条件是什么,查哪些字段
7.3:隐式内连接
7.4: 理解使用where 条件消除无用的数据
7.5:显示内连接
7.6:关键词 inner join
7.7:语法: select 字段列表 form 表名列表 inner join 表名 on 条件
7.8:注意事项:inner是可选,可用可不用的
8.1:外连接查询
8.2:左外连接
8.3:语法 select 字段列表 from 表名列表1 left outer join 表2 on 条件(不用添加where,直接输入条件);
案例:select t2.id,t2.enma,t1.id,t1.enam from emp t1 left join emp t2 on t2.mgr=t1.id;
8.4:注意事项 查询的是左表的所有数据以及交集部分 outer 可有可无
8.5:右外连接
8.6: 语法 select 字段列表 from 表1 right outer join 表2 on 条件(不用添加where,直接输入条件)
8.7:查询的是右表的所有数据以及交集部分
8.2:左外连接
8.3:语法 select 字段列表 from 表名列表1 left outer join 表2 on 条件(不用添加where,直接输入条件);
案例:select t2.id,t2.enma,t1.id,t1.enam from emp t1 left join emp t2 on t2.mgr=t1.id;
8.4:注意事项 查询的是左表的所有数据以及交集部分 outer 可有可无
8.5:右外连接
8.6: 语法 select 字段列表 from 表1 right outer join 表2 on 条件(不用添加where,直接输入条件)
8.7:查询的是右表的所有数据以及交集部分
9.1:子查询
9.2:理解:查询中嵌套查询,称为嵌套查询为子查询
9.3:当子查询为单行单列时
9.4:理解;可以使用运算符来判断 > >= <= =
9.5: 案例:查询小于平均工资的人
select * from emp where rmp.salary<(select avg(salary)from emp);
9.6:子查询的结果是多行单列的
9.7: 理解 子查询可以作为条件,使用运算符in来判断
9.8:案例:查询两个表员工信息
select * from emp where dept_id in(select id from dept where name=‘管理部’ on name =’ 经济部‘);
9.9:子查询的结果是多行多列的
9.10:理解 子查询可以作为一张虚拟表参与查询
9.11:案例:查询学生为20之后的 学生信息和课程信息
select * from student a1,(select * from cour where cour.name>20)a2 where a1.id=a2.id;
9.2:理解:查询中嵌套查询,称为嵌套查询为子查询
9.3:当子查询为单行单列时
9.4:理解;可以使用运算符来判断 > >= <= =
9.5: 案例:查询小于平均工资的人
select * from emp where rmp.salary<(select avg(salary)from emp);
9.6:子查询的结果是多行单列的
9.7: 理解 子查询可以作为条件,使用运算符in来判断
9.8:案例:查询两个表员工信息
select * from emp where dept_id in(select id from dept where name=‘管理部’ on name =’ 经济部‘);
9.9:子查询的结果是多行多列的
9.10:理解 子查询可以作为一张虚拟表参与查询
9.11:案例:查询学生为20之后的 学生信息和课程信息
select * from student a1,(select * from cour where cour.name>20)a2 where a1.id=a2.id;