MYSQL基础-SQL-DQL ! ! !

基础篇:

  • MySQL概述
  • SQLDDL,DML

  • 函数
  • 约束
  • 多表查询:
  • 事务

2、SQL(重要)

  • SQL通用语法
  • SQL分类
  • DDL
  • DML
  • DQL
  • DCL

2.5、DQL:数据查询语言!!

用来查询数据库表中的记录,使用频率高。重点!!

关键字:SELECT

语法:

SELECT 
	字段列表
FROM
	表名列表
WHERE
	条件列表
GROUP BY
	分组字段列表
HAVING
	分组后条件列表
ORDER BY
	排序字段列表
LIMIT
	分页参数

1、基本查询:

  • 1、查询多个字段:
    SELECT 字段1,字段2,...FROM 表名;
    查询表中所有字段 * :
    SELECT * FROM 表名;
-- 1.查询指定 name,workno,age 字段返回
SELECT name,workno,age FROM emp;
-- 2.查询所有字段返回
select * from emp;
  • 2、设置别名:
    SELECT 字段1 [AS] 别名1,字段2 [AS] 别名2,... FROM 表名;
    //AS可以省略不写
-- 3.查询所有员工的工作地址,起别名
SELECT workaddress AS'工作地址'FROM emp ;
SELECT workaddress'工作地址' FROM emp;
  • 3、 去除重复记录:
    SELECT DISTINCT 字段列表 FROM 表名;
-4.查询公司员工的上班地址(不要重复)
SELECT DISTINCT porkaddress'工作地址'FROM emp;

2、条件查询(WHERE)

语法:SELECT 字段列表 FROM 表名 WHERE 条件列表;

逻辑运算符:
MYSQL基础-SQL-DQL ! ! !_第1张图片

比较运算符
MYSQL基础-SQL-DQL ! ! !_第2张图片

3、聚合函数(count,max,min,avg,sum)

将一列数据作为一个整体,进行纵向运算

常见聚合函数:

count:统计数量 / max:最大值 / min:最小值
avg:平均值 / sum:求和

语法:SELECT 聚合函数(字段列表) FROM 表名;

注意: 使用聚合函数时,NULL 值不参与运算。

  • count:统计数量
    MYSQL基础-SQL-DQL ! ! !_第3张图片
    若在统计员工数量时IDcard有一个null 值,那么第二条执行结果就会比第一条少1.
  • max:最大值
    在这里插入图片描述
  • min:最小值
    在这里插入图片描述
  • avg:平均值
    在这里插入图片描述
  • sum:求和
    在这里插入图片描述

4、分组(GROUP BY)

语法:

SELECT 字段列表 FROM 表名 [WHERE 条件] GROUP BY 分组字段名 [HAVING 分组后过滤条件] ;

WHERE 与 HAVING 区别:
1、执行时机: where在分组之前进行过滤,不满足where条件的不参与分组;having时对分组之后的结果进行过滤。
2、判断条件:where不能对聚合函数进行判断,having可以。
注意;
执行顺序:WHERE > 聚合函数 >HAVING.
分组之后,查询的字段一般为聚合函数和分组字段,查询其他字段无任何意义。

案例:
1、根据性别分组,统计男性员工和女性员工的数量;
SELECT gender,count(*) FROM emp GROUPE BY gender;
2、根据性别分组,统计男性员工和女性员工的平均年龄
select gender, avg(age) from emp group by gender ;
3.查询年龄小于45的员工,并根据工作地址分组,获取员工数量大于等于3的工作地址
select workaddress, count(*) from emp where age < 45 group by workaddress

5、排序(ORDER BY)

语法:SELECT 字符按列表 FROM 表名 ORDER BY 字段1 排序方式,字段2 排序方式...;

默认:ASC :升序
** DESC ** :降序

注意:如果时多字段排序,当第一个字段值相同时,才会根据第二个字段排序。

6、分页(LIMIT)

语法:

SELECT 字段列表 FROM 表名 LIMIT 起始索引,查询记录数;

注意:
1、起始索引从0开始,起始索引=(查询页码-1)*每页显示记录数。
2、分页查询是数据库的方言,不同的数据库有不同的实现,MySQL中时LIMIT。
3、如果查询的时第一页数据,起始索引可以省略,直接简写limit 10(每页显示10条记录)。

案例:
1,查询第1页员工教据,每页展示10条记录
select * from emp limit 0, 10;
select from emp limit 10;
2.查询第2页员工数据,每页展示10条记录-------->(页码-1)+页展示记录数
select * from emp limit 10,10;

7、 DQL-执行顺序:

MYSQL基础-SQL-DQL ! ! !_第4张图片MYSQL基础-SQL-DQL ! ! !_第5张图片

DQL 总结:

MYSQL基础-SQL-DQL ! ! !_第6张图片

你可能感兴趣的:(软件测试,笔记,sql,mysql,数据库)