MYSQL学习day02

  【简单查询语句DQL】【select 字段名1,字段名2,...(最后一个字段后无逗号) from 表名; 】【SQL语句均以分号结尾且不区分大小写】

  

  【SQL语句若不写分号,按回车后可以继续写语句,直到有分号按回车才会执行】

   【\c回车退出语句编写】

 -----------------------------------------------------------

   【字段可以参与数学运算】【例如:select ename,sal *12 from emp;】

 -----------------------------------------------------------------------------------------------

     【字段重命名 as】【例如:select ename,sal *12 as yearsal from emp;】

  【as关键字可以使用一个空格代替】

 

---------------------------------------------------------------- 

    【字段可以有 '中文' 但要加单引号】

   【查询所有字段 select * from emp; 】

 ===============================================

  【条件查询】【where】

  

   因为ename字段是varchar类型,所以要加单引号

 

  【>,<,>=,<=,<>,!=】 

 

  【between...and...; 必须左小右大】

    【between...and...; 可以用在字符串,此时左闭右开】

   【where 字段 is null/is not null; 】 

 

   【or】 

 

 ---------------------------------------------------------------------------------------------------

  【不确定优先级就使用小括号,小括号中的为一个整体且先执行】 

 

 --------------------------------------------------------------------------

  【where in(具体值1,具体值2,...,具体值3); 】

    【where not in(具体值1,具体值2,...,具体值3); 】

  ------------------------------------------------

  【模糊查询where like....; 】【%:任意数量字符】【_:任意单个字符】【查询的是字符串所以要加单引号】

 

  【使用转义字符 \】

 

  =================================================

  【仅排序时不使用where】

  【排序 order by 字段名; 默认是升序(数值越来越大)】

  【降序:order by 字段名 desc; 】【升序:order by 字段名 asc; 】

   【多个排序条件时】

  【同时使用时,where在前,order by 在后,表示先选择出来在排序】

   【执行顺序】

  ================================================

  【分组函数/多行处理函数】

  【count(字段名/*) 计数】【sum(字段名/*) 求和】【avg(字段名/*) 平均数】【max(字段名/*) 最大值】【min(字段名/*) 最小值】

  【分组函数的特点,在统计时自动忽略null】

  所以....面试时或许会给你一个含有null的表格,让你使用sum之类的分组函数,此时不要犯下面的错误

------------------------------------------------------------------------------------------------------------

    【单行处理函数,有null参与运算时,结果一定为null,所以要使用ifnull()】

  【ifnull(字段名.0) 表示如果指定字段名为null,则把它当成0计算】 

 ------------------------------------------------------------------

  【分组函数不能使用在where语句之后】

  【having】    解释,因为执行顺序

  【正确方法使用子查询】

      【count(*)和count(字段名)的区别】

    【分组函数的组合使用】

  【group by】

  【having】

  【分组函数会在group by语句执行结束之后才会执行】

 

 

   【当语句中有group by时,select后面只能跟参与分组的字段和分组函数】

 

 

 

  【求每个工作岗位的平均薪资】

 

  【group by多个字段联合使用】【找出每个部门不同工作岗位的最高薪资】

 

  【使用group by时,where与having的使用区别】【where后面不能使用分组函数,但having可以】

  【若先分组在筛选使用having,反之使用where】

 

 --------------------------------------

  【DQL的执行顺序】

 

  

———整理自B站动力节点  

posted @ 2020-12-21 17:11  18751612782  阅读(70)  评论(0)    收藏  举报