美文网首页
Mysql查询加强

Mysql查询加强

作者: 温柔倾怀 | 来源:发表于2019-08-07 17:11 被阅读0次

查看表结构

desc 表名;
show create table 表名;

使用算术表达式加强

计算每个雇员的年薪
select (ifnull(sal,0.0)+ifnull(comm,0.0)) * 12 as 年薪 from emp;

where子句的加强

select * from emp where sal between 2000 and 3000;
select * from emp where sal>=2000 and sal<=3000;

显示首字符为SS的员工姓名和工资
select ename,sal from emp where 'S'=left(ename,1);
select ename,sal from emp where ename like 'S%';

显示第三个字符为大写o的所有员工的姓名和工资
select ename,sal from emp where ename like '__O%';

显示empno为123,234,800的雇员情况
select * from emp where empo in (123,234,800);
显示没有上级的雇员情况
select * from emp where mgr is null;

逻辑操作符的加强

select * from emp where (sal>500 or job='MANAGER') and ename like 'J%';

使用order by子句

按照工资从高到低的顺序显示
select * from emp order by sal;
按照部门号升序而雇员的工资降序排序
select * from emp order by deptno,sal desc;

mysql的分页查询

实际查询时,不可能把所有的记录都返回,而是一页一页返回,这是我们就会使用分页查询(limit)

  • 分页查询有两个重要的参数,$pageSize 表示一页显示几条记录
    分页查询有两个重要的参数 $pageNow 表示显示第几页

select 列名 from 表名 limit ($pageNow-1)*$pageSize,$pageSize;

  • 索引从0开始,所以下图是查询第一条记录
    select chinese from student limit 0,1;

聚合函数的加强-max,min,avg,sum,count

select avg(sal),deptno from emp where deptno=20;
显示工资最高的员工和其工作岗位
select * from emp where sal=(select max(sal) from emp)
显示工资高于平均工资的员工信息
select * from emp where sal>(select avg(sal) from emp);

group by 和having子句的加强

显示每个部门的平均工资和最高工资
select avg(sal),max(sal) from emp group by deptno;
显示每个部门的每种岗位的平均工资和最低工资
select avg(sal),max(sal) from emp group by deptno,job;
显示平均工资低于2000的部门号和它的平均工资
select avg(sal) as myavg,deptno from emp group by deptno having myavg<2000;

数据分组关键字顺序

同时出现书写顺序 group by ,having ,order by
统计各个部门的平均工资,并且是大于2000,按照平均工资从高到低排序
select avg(sal) as myavg from emp group by deptno having myavg>2000 order by myavg desc;

相关文章

  • Mysql查询加强

    查看表结构 desc 表名;show create table 表名; 使用算术表达式加强 where子句的加强 ...

  • MySQL加强(二)——高级查询

    1.分组查询 1.1什么是分组: 针对于班上所有的同学: 分组情况1-按照性别分组:男生一组,女生一组,之后可以统...

  • 2018-03-20

    MYSQL查询语句 MYSQL复杂操作语句 MYSQL多表查询方法 函数部分

  • 高性能的索引策略

    MySQL查询基础-查询执行过程 MySQL聚簇索引 MySQL覆盖索引 MySQL索引扫描排序 MySQL冗余和...

  • MySQL学习——查询缓存

    MySQL查询缓存简介 MySQL查询缓存是MySQL将查询返回的完整结果保存在缓存中。当查询命中该缓存,MySQ...

  • Mysql 慢查询日志

    Mysql 慢查询日志 慢查询日志 MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中...

  • mysql 查询

    mysql的查询、子查询及连接查询 一、mysql查询的五种子句 where(条件查询)、having(筛选)、g...

  • MySQL 索引及查询优化总结-2018-03-20

    MySQL 索引及查询优化总结 文章《MySQL查询分析》讲述了使用MySQL慢查询和explain命令来定位my...

  • SQL查询近期数据

    mysql查询时间的数据: 解释: 1.(mysql查询今天的数据) 2.(mysql查询昨天的数据) 3.(以当...

  • mysql json 查询

    mysql json 查询 MySQL 5.7新增对JSON支持 1. 普通 json 查询 数据 查询语句 数...

网友评论

      本文标题:Mysql查询加强

      本文链接:https://www.haomeiwen.com/subject/oexadctx.html