查询

  1. 使用DISTINCT剔除重复行(DISTINCT必须紧跟在select之后)

    select distinct deptno from emp;
    select distinct deptno,job from emp;
  2. 处理空值

    select ename,job,sal, IFNULL (comm,'无') as comm  from emp;
    -- 判断comm这一列中如果有空值 就把空值替换为‘无’
  3. 数据过滤

    1. 比较运算符

      1. “>” 表示前者大于后者

      2. “!=”或“<>” 用于比较两者是否相等

      3. any 用于匹配列表中任意值

        查询在10 或 20 或 30 部门工作的员工信息
        select * from emp where deptno in (10,20,30);
    2. SQL运算符

      1. between...and... 用于匹配值的范围

        select ename,job,sal from emp  where sal  between 1500 and  2000;
      2. is null 和 is not null 用于判断值是否为空

        select * from emp where comm is null;
        select * from emp where comm is not  null;
      3. like 实现模糊查询

        1. 默认采用%匹配任意多个字符

          select ename,empno,job from emp  where ename like '%o%';
        2. 默认采用_匹配任意单个字符

          查询ename第三个字母是o的员工信息
          select ename,empno,job from emp  where lower(ename) like '__o%';
          select ename,empno from emp where ename like '_/_%'; -- /_ 用/转义
          select ename,empno from emp where ename like '_$_%' escape '$'; -- 转义
    3. 数据分组

      1. max求一列的最大值

      2. min求一列的最小值

      3. sum 用于求和

      4. count 用于统计非空函数的行数

        select count(ename) from emp;
      5. GROUP BY 分组查询

        select deptno,min(sal),max(sal),avg(sal) from emp group by deptno;
        ​
        -- 四舍五入函数 round()
        select deptno,min(sal),max(sal),round(avg(sal)) from emp group by deptno;
        ​
        -- 先用where过滤再分组
        select deptno,job,round(avg(sal)) from emp where deptno is not null group bydeptno,job;
        ​
      6. HAVING 数据筛选

        -- 对分组后的数据再进行筛选
        select deptno,avg(sal) from emp where deptno is not null group by deptno having  avg(sal) > 2000;
      7. ORDER BY 排序

        -- 先根据sal排序 如果sal相同再用deptno排序
        select * from emp order by sal DESC,deptno DESC;

mysql学习day03——02相关推荐

  1. MySQL学习笔记02【SQL基本概念与通用语法、数据库的CRUD操作】

    MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...

  2. MySQL学习笔记 02、MySQL基础(覆盖基本知识点)

    文章目录 前言 一.Mysql介绍 1.1.了解Mysql 1.2.认识Socket 1.3.查看设置变量(以及全局) 二.SQL 2.1.DCL(数据控制语言) 2.2.DDL(数据定义语言)重要 ...

  3. MySQL学习Day03(狂神说Java)

    文章目录 3.MySQL数据管理 3.1 外键(了解即可) 3.2 DML语言(全部记住) 3.3 添加 3.4 修改 3.5 删除 3.MySQL数据管理 3.1 外键(了解即可) 方式一:在创建表 ...

  4. mysql 学习笔记 02创建表

    表结构的创建 比如: create table userinfo (id int unsigned comment 'id号'name varchar(60) comment '用户名'passwor ...

  5. MySQL学习笔记07【事务、用户管理和权限管理】

    MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...

  6. MySQL学习笔记06【多表查询、子查询、多表查询练习】

    MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...

  7. MySQL学习笔记05【多表操作、三大范式、数据库的备份和还原】

    MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...

  8. MySQL学习笔记04【数据库的查询操作、今日内容、表的约束】

    MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...

  9. MySQL学习笔记03【数据库表的CRUD操作、数据库表中记录的基本操作、客户端图形化界面工具SQLyog】

    MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...

最新文章

  1. 人脸识别争议不断 中美市场冰火两重天
  2. ffmpeg3.3新版本AVStream的封装流参数由codec替换codecpar
  3. C# 线程手册 第五章 扩展多线程应用程序 系列
  4. docke容器无法访问宿主主机的端口
  5. nssl1477-赛【对顶堆,贪心】
  6. mysql-plus多数据库_IDEA项目搭建九——MybatisPlus多数据库实现
  7. javascript中new url()属性,轻松解析url地址
  8. postgreSQL数据库默认用户postgres常用命令
  9. 网站生成EXE文件运行——PHP网站打包工具PHPWAMP
  10. 刚体转动惯量c语言计算程序,Tracker软件在三线摆测量刚体转动惯量实验中的应用...
  11. PowerDesigner如何自定义报表模板
  12. Cocos--开启物理
  13. 中文新闻分类 数据集_NLP-新闻文本分类实战
  14. Linux下sqlite3移植与编程
  15. java饼图_java 百分比饼图的实现代码
  16. Maven系列之使用阿里云仓库
  17. Zookeeper选主过程,理论和源码结合,还看不懂给你发红包
  18. MODIS数据几何校正(IDL)
  19. mount 命令介绍
  20. 蚂蚁金服FreeLine使用

热门文章

  1. [cocos2d-x]深入--几个代表性的类
  2. linux文件系统格式化
  3. android——wifi系统架构
  4. 关于内部网络病毒泛滥的一个解决办法
  5. OpenCV-通道分离cv::split
  6. java 英文数字下划线_为什么Java7开始在数字中使用下划线
  7. ELK(ElasticSearch+LogStash+Kibana)搭建
  8. Fiddler访问百度
  9. 如何编写测试用例(入职测开感想)
  10. 安装Linux系统的一些问题记载