👨🎓作者:Java学术趴 🏦仓库:Github、Gitee ✏️博客:CSDN、掘金、InfoQ、云+社区 💌公众号:Java学术趴 🚫特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系小编授权。 🙏版权声明:文章里的部分文字或者图片来自于互联网以及百度百科,如有侵权请尽快联系小编。微信搜索公众号Java学术趴联系小编。 ☠️每日毒鸡汤:一朵花的美丽在于它曾经凋谢过。
👋大家好!我是你们的老朋友Java学术趴,今天继续给大家分享小编精心为大家整理的一万字MySQL数据库核心知识、在接下来的几天为大家持续分享,💘关注不迷路呦!!!💘。数据库是存放数据的仓库。它的存储空间很大,可以存放百万条、千万条、上亿条数据。但是数据库并不是随意地将数据进行存放,是有一定的规则的,否则查询的效率会很低。数据库是一个按数据结构来存储和管理数据的计算机软件系统。🦄
语法格式:
select
字段值1,字段值2...
from
表名
order by
字段值;
select ename,sal from emp order by sal; (这个为默认,默认升序)
注意:默认是升序。怎么指定升序或者降序?asc表示升序,desc表示降序。
select ename,sal from emp order by sal; (默认升序) select ename,sal from emp order by sal asc; select ename,sal from emp order by sal desc;
select ename,sal from emp order by sal desc,ename asc;
注意: 越靠前的字段越能起主导作用。只有当前面的字段无法完成排序的时候,才会启用后面的字段。
练手:
select ename,sal from emp order by 1;
select ename,sal from emp order by 2;
select * from emp order by 6;
select
ename,job,sal
from
emp
where
job = 'SALESMAN'
order by
sal desc;
执行顺序 : 先执行from,在执行where,在执行select,最后在执行order by 。
select
* 3
from
tablename 1
where
条件 2
order by
... 4
order by 是最后执行的。
记住: 所有的分组函数都是对“某一组”数据进行操作的。
select sum(sal) from emp;
select max(sal) from emp;
select min(sal) from emp;
select avg(sal) from emp;
select count(*) from emp;
select count(ename) from emp;
分组函数一共有5个。分组函数还有另一个名字:多行处理函数。 多行处理函数的特点:输入多行,最终输出的结果是 1 行。
select count(comm) from emp;
select sun(comm) from emp;
多此一举:不需要添加这个额外的过滤条件,分组函数自动忽略null
select sum(comm) from emp where comm is not null;
第一步 : 找出平均工资
select avg(sal) from emp;
第二步 : 找出工资高于平均工资的员工
select ename,sal from emp where sal > (select avg(sal) from emp);
以下的错误信息:无效的使用了分组函数。
以上的错误原因:**SQL语句当中有一个语法规则,分组函数不可以直接使用在where子句当中。
因为group by 是在 where 执行之后才会执行的。
select 5
...
from 1
...
where 2
...
group by 3
...
having 4
...
order by 6
...
select count(comm) from emp;
select count(job) from emp;
select count(*),sum(sal),avg(sal),max(sal),min(sal) from emp;
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。