-- 基本查询
-- 1.指定查询字段 name entrydate
select name,entrydate from tb_emp;
-- 2.返回所有字段
select id, username, password, name, gender, image, job, entrydate, create_time, update_time from tb_emp
-- select * from tb_emp;
-- 3.查询起别名
select name as 姓名,entrydate as 入职日期 from tb_emp;
-- 4.查询关联了几种职位
select distinct job from tb_emp;
2.条件查询:
sql复制代码
-- DQL 条件查询
-- 1.查询姓名为 张三的员工
select * from tb_emp where name = '张三';
-- 2.查id小于5
select * from tb_emp where id < 5;
-- 3.查询没职位的
select * from tb_emp where job is null;
-- 4.有职位
select * from tb_emp where job is not null;
-- 5.查密码不等于123456的
select * from tb_emp where password != '123456';
-- 6.查入职日期在 2000-1-1到2010-1-1之间的
select * from tb_emp where entrydate >= '2000-1-1' and entrydate <= '2010-1-1';
-- 7.查入职日期在 2000-1-1到2010-1-1之间的 且性别为女
select * from tb_emp where entrydate >= '2000-1-1' and entrydate <= '2010-1-1' and gender = 2;
-- 8.查询职位是(2)讲师 (3)学工主管 (4)教研主管的信息
select * from tb_emp where job in (2,3,4);
-- 9.查询姓名为2个字的信息
select * from tb_emp where name like '__';
-- 10.查询姓为张的信息
select * from tb_emp where name like '张%';
3.聚合函数:
sql复制代码
-- DQL分组操作
-- 聚合函数
-- 1.统计企业员工总数量 -- count
-- count(字段)
select count(id) from tb_emp;
select count(id) from tb_emp;
-- count(常量)
select count('a') from tb_emp;
-- count (*)
select count(*) from tb_emp;
-- 2.统计最早入职的员工
select min(entrydate) from tb_emp;
-- 3.统计最晚入职的员工
select max(entrydate) from tb_emp;
-- 4.统计ID平均值
select avg(id) from tb_emp;
-- 5.统计ID和
select sum(id) from tb_emp;
4.分组查询:
复制代码
-- DQL分组查询
-- 1.根据性别分组,统计男性女性员工数量
select gender,count(*) from tb_emp group by gender;
-- 2.查询入职时间在2015-1-1之前的员工,并根据职位分组,获取员工数量大于2的职位
select job,count(*) from tb_emp where entrydate <= '2015-01-01' group by job having count(*) > 2;
5.排序查询
复制代码
-- DQL排序查询
-- 1.入职时间升序排序
select * from tb_emp order by entrydate asc;
-- 2.根据入职时间,对员工进行降序排序
select * from tb_emp order by entrydate desc;
-- 3.根据入职时间,对员工进行升序排序,时间相同按更新时间排序
select * from tb_emp order by entrydate , update_time desc;
6.分页查询
复制代码
-- 分页查询
-- 1.从起始索引0开始查询员工数据,每页展示五条记录
select * from tb_emp limit 0,5;
-- 2.查询第一页员工数据,每页展示五条记录
select * from tb_emp limit 0,5;
-- 3.查询第二页员工数据,每页展示五条记录
select * from tb_emp limit 5,5;
-- 4.查询第三页员工数据,每页展示五条记录
select * from tb_emp limit 10,5;