数据查询语言SQL

发布于 2021-09-15 00:30

掌握:数据库及SQL基本概念 
(1) 数据库的分类 
(2) SQL的基本语法 
应用:SQL的实际应用 
(1)了解SQL在数据分析中的应用 
(2)学会使用SQL实现数据分析

01

数据库基础




数据产品经理与数据分析师的区别
数据产品经理岗位要求
1、了解数据库
1)EXCEL
优点:简单易学、直观、方便更新、筛选及做简单的统计
缺点:无法支持复杂筛选、不方便做关联、不方便做统计、数据量大时响应缓慢 2)数据库

02

SQL查询基础




查询数据

select  字段列表  from 表名;
1)、处理重复数据
distinct
select distinct 字段列表  from 表名;
2)、排序返回结果
asc、desc
select  字段列表  from 表名;
order by 列名 ASC,列名DSC;
ASC为正序
DESC为倒序
3)、指定要返回的记录数量
SQL select top、limit、rownum
select  字段列表  from 表名 limit 数字;
select  字段列表  from 表名 order by 列名 desc limit;
4)、指定要返回中间行

select 字段列表 from 表名 limit n,m(n第几行,m有多少行数)

03

过滤数据





where

select  字段列表  from 表名 where 过滤条件(字段列名、操作符、限定值)
1)、常用的操作符
过滤单个值;
过滤null值;
过滤集合;
select  字段列表  from 表名 where 过滤条件 between 10 and 20(前面的值小于后面的值);
select  字段列表  from 表名 where 过滤条件 in (条件1、2、3、4);
select  字段列表  from 表名 where 过滤条件 in (select语句);
like及通配符
select  字段列表
from 表名
where 过滤条件 like 通配符
通配符:"%","_"。

子查询

概念:子查询是一种嵌套在其他SQL 查询的where语句中的查询,
1)子查询用于为
  • 主查询返回其所需数据;
  • 对检索数据进行进一步的限制。
2)规则
  • 子查询必须带括号
  • 子查询的select子句中只能有一个列;
  • 子查询不能使用order by;
  • 子查询,作为增强,放在from前面;作为筛选条件的加强,放在where后面。
3)exists 返回的值是bool值 true或false;

组合查询

union all:合并不去重;
union:去重。
同样数据类型和同样数列表达式,杂糅在一起。

统计函数

select后面直接跟函数
select count(*) from 表名;

分组汇总统计

1)、group by
group by 语句通常与集合函数(count、max、min、sum、AVG)一起使用,以按一个或多个列对结果进行分组;

group by 跟在where 后面;

select  字段列表

from 表名
where 过滤条件

group by  字段

过滤分组结果

  • having子句使你能够指定条件,从而控制查询结果中哪些组可以出现在最终结果里面;
  • where 子句对被选择的列施加条件,而having子句则对group by 子句所产生的组施加条件。
示例
select class_id,avg(score)
from student
where score>80
group by class_id
having avg(score)>90
order by avg(score) desc;
1)常见函数分类
2)常见数值函数
3)常见文本函数
4)常见日期和时间函数
13、SELECT子句顺序

连接表

Oracle数据库支持full join;
mySQL不支持full join ,但仍然可以通过左外链接+union+右外链接实现
SELECT * from student INNER JOIN teacher ON student.teacher_id = teacher.teacher_id;

视图

1)常见的使用场景
场景一:仅提供需要的数据;
场景二:对特定的用户仅开放特定的数据,达到保护敏感数据的目的,提升了数据安全性;
场景三:仅筛选需要的数据 
场景四:简化复杂的操作 
场景五:重新格式化出新的字段 
场景六:使用计算表达式生成新的字段 
场景七:屏蔽底层实现逻辑及频繁的变更 
场景八:合并多个分离的子表
本章内容是我的个人学习笔记,如有不足处,希望大家可以一起交流学习,一起变强大。
650时光
每天坚持系统学习:互联网行业知识(数据产品经理)

本文来自网络或网友投稿,如有侵犯您的权益,请发邮件至:aisoutu@outlook.com 我们将第一时间删除。

相关素材