mysql单表查询语句

1.简单查询

2.条件查询

2.1语法格式:

	select 字段,字段,字段....
	from
		表名
	where
		条件;

执行顺序:先from 然后where,最后select。
mysql中,字符串用’ '单引号括起来

2.2模糊查询like

在模糊查询当中,必须掌握两个特殊符号,一个是%,一个是_;%代表任意多个字符,_代表任意一个字符

找出名字当中含有O的?
	select * from emp where ename like '%O%';
找出第二个字母是A的?
	select * from emp where ename like '_A%';

2.3.排序

默认升序
asc表示升序,desc表示降序
按照工资升序,找出员工名和薪资?
	select
		ename,sal
	from
		emp
	order by
		sal asc(或者desc);
按照工资的降序排列,当工资相同的时候再按照名字的升序排列
	select ename,sal from emp order by sal desc , ename sac;

执行顺序:先from,再where,然后select ,最后order

2.4 分组函数(多行处理函数)

count 计数
sum 求和
avg 平均值
max 最大值
min 最小值

记住:所有的分组函数都是对“某一组”数据进行操作的。
分组函数自动忽略NULL

找出工资总和:
	select sum(sal) from emp;

2.5 group by 和 having

group by :按照某个字段或者某些字段进行分组。
having :对分组之后的数据进行再次过滤
案例:找出每个工作岗位的最高薪资
	select max(sal) from emp group by job;
注意:分组函数一般都会和group by联合使用,并且任何一个分组函数都是在group by语句执行结束之后才会执行。
找出每个部门最高薪资,要求显示薪资大于2500的数据
	select max(sal),deptno from emp where sal >2900 group by deptno ;
找出每个部门的平均薪资,要求显示薪资大于2000的数据
	select avg(sal),deptno from emp group by deptno having avg(sal)>2000;

	select deptno,avg(sal) from emp where avg(sal)>2000 group by deptno ;//错误
	where后面不能使用分组函数。

2.6 关于查询结果集的去重

distinct关键字只能出现在所有字段的最前面,表示后面的字段联合起来去重。

案例:
select distinct job from emp;
案例:统计岗位数量
select count(distinct job) from emp;

总结一个完整的DQL语句:
select 5

from 1

where 2

group by 3

having 4

order by 6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值