大数据系列sql基础知识(史上最全,收藏起来)

大数据系列文章,从技术能力、业务基础、分析思维三大板块来呈现,你将收获:

1、 提升自信心,自如应对面试,顺利拿到实习岗位或offer;

2、掌握大数据的基础知识,与其他同事沟通无障碍;

3、 具备一定的项目实战能力,对于大数据工作直接上手;

大数据工程师系列专栏: 面试真题、开发经验、调优策略

大数据工程师知识体系:

大数据系列sql基础知识(史上最全,收藏起来)_第1张图片

大数据工程师的工作内容是什么?而大数据时代,有一个关键性的岗位不得不提,那就是大数据工程师。想必大家也会好奇,大数据工程师,日常是做什么的呢? 

1.数据采集 找出描述用户或对业务发展有帮助的数据,并将定义相关的数据格式,交由业务开发部门负责收集对应的数据。 2.ETL工程  对收集到的数据,进行各种清洗、处理、转化等操作,完成格式转换,便于后续分析,保证数据质量,以便得出可以信赖的结果。 3.构建数仓 将数据有效治理起来,构建统一的数据仓库,让数据与数据间建立连接,碰撞出更大的价值。 4.数据建模 基于已有的数据,梳理数据间的复杂关系,建立恰当的数据模型,便于分析出有价值的结论。 5.统计分析 对数据进行各种维度的统计分析,建立指标体系,系统性地描述业务发展的当前状态,寻找业务中的问题,发现新的优化点与增长点。 6.用户画像 基于用户的各方面数据,建立对用户的全方位理解,构建每个特定用户的画像,以便针对每个个体完成精细化运营。

大数据工程师必备技能

那么,问题来了,如果想成为一名大数据工程师,胜任上述工作内容,需要具备什么样的条件?拥有什么样的知识呢?

大数据系列sql基础知识(史上最全,收藏起来)_第2张图片

由于介绍的是基础知识,因此本文的主要内容是讲解面向数据分析的SQL基础知识。本文会从4个方面来讲解:

第1部分,数据库体系的一些基本概念。我们会提到数据库相关的一些重要概念,方便大家理解SQL的写法,更重要的是理解这些概念是与他人沟通SQL相关内容的前提。

第2部分,SQL查询的基本语法。我们会来讲解下SELECT子句的使用方法,如何完成一些针对单表的简单的统计分析。

第3部分,数据库函数、谓词和CASE表达式。我们会来介绍下常用的一些函数、用于判断真假的谓词和用于多条件判断的CASE表达式。

第4部分,关联查询和子查询。我们将会带大家学习下,如何把多张表连接起来,通过表交叉来获取更多的信息,以及使用子查询实现在查询的结果上继续分析。

由于不同数据库厂商,引擎实现各有不同,SQL的语法、关键字、函数等都略有差异,因此本文只拿在互联网公司使用最广泛的MySQL为例进行讲解,文中涉及的SQL和例子都是在MySQL中运行的。下面我们就进入正式的知识讲解。

1 、 数据库体系的一些基本概念

本部分的核心目标是让大家理解一些核心的基本概念,这些概念在日常工作中经常会提到和用到,因此理解了这些概念才能和团队其他小伙伴顺畅地沟通,愉快地协作。由于本文的重点是讲SQL,因此我们只讲解关系型数据库相关的概念。

1.1  数据库与数据库管理系统 

我们通常口中所说的数据库,有两种含义,一是指实际存储数据的仓库,二是指抽象层面上容纳一组表的那个database。其中,表达后一种含义更常见。数据库管理系统,通常是指管理数据库的一套系统,通过它可以实现对数据的定义、插入、更新、删除、查询等操作,它提供了数据分析师与数据交互的窗口。

1.2  表 

关系型数据库中的表,通常是指由行和列组成的用于存储数据的二维表。表是数据存储的直接载体,我们的数据通常都需要存储在表中。数据库基本上都是通过表来组织数据的。所以,表也是我们查询并获取数据最直接的对象。

对于表而言,有以下几个特性:

a. 表是由存在关联性的多列组成的,可以存储N多行数据,每行数据称为一条记录,行和列的交叉点唯一确定一个单元格

b. 表中的列名不重复,即列名需唯一

c. 表中的任意一列都只能存储一种数据类型的数据

1.3  数据类型 

在不同的数据库管理系统中,支持的数据类型会略有差异,本文就以MySQL为例,介绍几种最常用的数据类型,分别如下所示:

数值类型

大数据系列sql基础知识(史上最全,收藏起来)_第3张图片

日期类型

大数据系列sql基础知识(史上最全,收藏起来)_第4张图片

字符串类型

大数据系列sql基础知识(史上最全,收藏起来)_第5张图片

上面只是罗列出了几种最常用的数据类型,如果大家接触到了其他不常用的类型,可以自己在网上搜索一下相关的信息。

1.4  主键 

主键是一列或多列的组合,用于标识表中唯一的一条记录。所以,它天然的一个属性就是不重复性,也不允许为NULL值。通常我们会使用自增的整型值来作为主键,由数据库管理系统来维护,既能保证唯一性,又使用起来很方便。一个表的主键,通常也会作为其他表引用的对象,即后面要讲到的外键。

1.5  外键 

外键通常用来建立两张表之间的关联关系,一个表的外键通常是与之关联的另一个表的主键。这样在进行关联查询时,就可以通过两个表外键和主键之间的关系,将两张表连接起来,形成一张中间表,将两张表的信息融合,产生更大的价值。

1.6  索引 

如果你想快速找到一本书中,你感兴趣的部分,你就会去查找目录,目录可以帮你快速定位到你想看的内容在哪一页。对于数据库中的表来说,索引就相当于是表的目录。其存在的主要目的就是为了加快查询速度。当然&#

你可能感兴趣的:(java,后端,面试题,数据仓库,数据库,big,data)