DQL基本查询

select username,entrydate from tb_emp;
/*查询全部字段 推荐使用这种*/
select username, column_name, empname, gender, tb_img, postion, entrydate, create_date, updata_date from tb_emp;
/*查询全部字段 不推荐使用这种*/
select * from tb_emp;
/*起一个别名*/
select empname  真实姓名,entrydate  入职日期 from tb_emp;
/*distinct去除重复*/
select distinct gender from tb_emp;

条件查询:

示例:

/*查询姓名是杨洋的*/
select * from tb_emp where username='杨咩咩';
/*查询id小于等于5的员工 select * from tb_emp where id<=5;*/
/*查询职位没有的 */
select * from tb_emp where postion is null ;
/*查询性别不等于1 的员工*/
select *from tb_emp where gender!=1;
select *from tb_emp where gender<>2;
/*查询入职日期在2000-01-01到2015-01-01之间的员工*/
select * from tb_emp where entrydate>='2000-01-01' and entrydate<='2015-01-01';
select * from tb_emp where entrydate between '2000-01-01' and '2015-01-01';
/*查询入职日期在2000-01-01到2015-01-01之间的员工 并且性别为女*/
select * from tb_emp where entrydate between '2000-01-01' and '2015-01-01' and gender='1';
/*查询职位是1或者2或者3的*/
select * from tb_emp where postion=1 or postion=2 or postion=3;
select * from tb_emp where postion in(1,2,3);
/*查询姓名为两个字的员工*/
select * from tb_emp where username like '__';
/*查询姓张的员工*/
select * from tb_emp where username like '杨%';

聚合函数:

# 聚合函数
/*1.统计员工数量 count 不对Null值运算*/
-- A.count(字段)
select count(username) from tb_emp;
-- B.count(常量)
select count(0) from tb_emp;
-- C.count(*)
select  count(*) from tb_emp;
/*2.统计该企业员工最早入职员工 Min*/
select min(entrydate) from tb_emp;
/*3.统计该企业员工最晚入职员工 max*/
select max(entrydate) from tb_emp;
/*4.统计该员工的平均值 avg*/
select avg(age) from tb_emp;
/*5.求和 sum*/
select sum(age) from tb_emp;

分组查询:

# 分组查询
/*1.根据性别分组,统计男性和女性的数量*/
select gender,count(*) from tb_emp group by gender;
/*2.先查询入职时间在2010-01-01之前的员工,结果根据职位分组,获取员工大于等于2 的职位 having写在分组之后再有条件限制的时候使用*/
select postion,count(*) from tb_emp where entrydate<='2010-01-01' group by postion having count(*)>=2;

排序查询:

#排序查询
/*1,根据入职时间,对员工进行升序查询 asc 默认升序*/
select * from tb_emp order by entrydate asc;
select * from tb_emp order by entrydate ;
/*2.对员工进行降序查询 DESc*/
select * from tb_emp order by age desc;
/*3,根据入职时间对公司的员工进行升序排序,入职时间相同,再按照跟新时间 进行降序排序 使用,就可以进行第二个排序*/
select * from tb_emp order by entrydate asc,updata_date desc ;

分页查询:

#分页查询
/*1.从索引0开始展示员工数据,每页展示5个数据*/
select * from tb_emp limit 0,5;
/*2.查询第二页,每页展示5个数据*/
select * from tb_emp limit 5,5;
-- 起始索引=(页码-1)*每页展示数量

分组查询是数据库的方言,每个数据分页方法不一样

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值