数据分析入门指南:数据库入门(五)
本文将总结CDA认证考试中数据库中部分知识点,内容来源于《CDA模拟题库与备考资料PPT》
。
CDA认证,作为源自中国、面向全球的专业技能认证,覆盖金融、电信、零售、制造、能源、医疗医药、旅游、咨询等多个行业,旨在培养能够胜任数据采集、清洗、处理、分析及业务报告制作、数字化决策等任务的新型数据人才。
作为当今的数据驱动时代,SQL是数据分析师不可或缺的技能之一。本文将以探讨数据库查询、查询操作符、子查询、函数等方法,帮助你建立对数据库操作的初步认识。
一、数据库查询
1、SELECT语句的操作符
根据特定条件从数据库中查询出数据。
加号(+)、减号(-)、乘号(*)和除号(/),查询中虽然不直接用于构造查询语句,但在数据查询常常涉及数据的计算和转换。
2、聚合类函数
在SQL中,聚合类函数如AVG(平均值)、SUM(总和)、MAX(最大值)、MIN(最小值)和COUNT(计数)等,允许对数据库中的数据进行汇总和统计,从而得出有意义的结论。
3、多表查询
在实际应用中,数据库通常包含多个相互关联的表。多表查询,如内连接(INNER JOIN)、左连接(LEFT JOIN)和联合查询(UNION),是处理这些复杂数据结构的关键。内连接查询返回两个或多个表中匹配的行;左连接查询则返回左表中的所有行,以及与右表中匹配的行(如果右表中没有匹配项,则结果中这些行的右表部分将为空);联合查询则用于合并两个或多个SELECT语句的结果集,要求这些结果集具有相同的列数和数据类型。
二、查询操作符与子查询
1、运算符
SQL查询操作符是用于在WHERE子句中设置条件,以过滤结果集。以下是一些常见的操作符及其用法:
BETWEEN:判断某个字段的值是否在指定的范围内。
SELECT * FROM fruits WHERE f_price BETWEEN 10 AND 20;
这个查询将返回价格在10元到20元之间的所有水果记录。
LIKE:用于匹配字段值是否包含指定的字符串。
SELECT * FROM fruits WHERE f_id LIKE 'b%';
这个查询将返回f_id以字母b开头且长度为两位的所有水果记录。
IS NULL:用于判断字段值是否为空(NULL)。
SELECT * FROM fruits WHERE f_name IS NULL;
此查询将返回所有f_name字段为空的水果记录。
DISTINCT:用于去除结果集中的重复记录。
SELECT DISTINCT s_id FROM fruits;
这里假设s_id是另一个相关字段,该查询将返回所有不重复的s_id值。
2、子查询与操作符组合应用
子查询是将一个查询的结果集作为另一个查询的条件或数据表来使用。以下是几种结合操作符使用子查询的例子:
ANY:表示满足内层查询结果中的任意一个条件。
SELECT * FROM fruits WHERE f_price = ANY (SELECT f_price FROM fruits WHERE f_price BETWEEN 10 AND 20);
这个查询会返回所有f_price在10元到20元之间的水果记录,尽管这里使用=和ANY的组合有些冗余,但展示了ANY的用法。
ALL:表示满足内层查询结果中的所有条件。
由于ALL通常用于比较操作符(如> ALL、< ALL),直接用于价格范围查询可能不太适用,但理论上可以这样使用:
SELECT * FROM fruits WHERE f_price > ALL (SELECT f_price FROM fruits WHERE f_price <= 20);
实际上,这个查询可能不会返回任何结果,因为没有任何价格能大于或等于20且同时小于20的所有价格。
EXISTS:用于判断内层查询是否存在满足条件的记录。
SELECT * FROM fruits f1 WHERE EXISTS (SELECT 1 FROM fruits f2 WHERE f2.f_price > 2
三、函数
1、常用的字符串函数
常用的字符串函数包括但不限于字符串的截取、替换、拼接等操作。在数据处理阶段对数据进行清洗和整理。
2、日期与时间函数
通过使用日期及时间函数,可以对时间数据进行提取、转换和计算,从而进行时间序列分析、趋势预测等高级操作。这些函数包括日期的加减、格式化、提取特定部分(如年、月、日)等。
3、其他函数
除了上述常见的函数之外,还需要掌握一些其他的高级函数,以应对更复杂的数据分析需求。这些函数包括但不限于逻辑函数、开窗函数等。
3.1、逻辑函数
逻辑函数用于对表达式进行判断,根据满足的条件不同,执行相应的流程。例如,IF函数可以根据条件判断的真假,返回不同的结果。
3.2、开窗函数
开窗函数是SQL中的一种高级函数,允许在不改变原始数据行的情况下,对数据进行分组统计和计算。MySQL 8.0版本支持多达11种开窗函数,如ROW_NUMBER()、RANK()等,这些函数常与GROUP BY子句一起使用,能够提供更灵活的数据分析能力。
特别值得一提的是GROUP_CONCAT()函数,能够将同一组中的所有列值连接成一个字符串返回,非常适合于处理需要将多行数据合并为一行显示的场景。
四、总结
作为数据分析师,掌握数据库是你必不可少的技能之一。需要你熟练掌握数据查询、操作符查询与子查询、函数等,并深入数据库等核心内容,以确保数据分析工作的顺利进行和结果的准确性。只有你不断学习和实践,才能成为一名优秀的CDA数据分析师。
CDA认证对于你来说非常具有价值的:
如果你是一名学生,能够增强职场竞争力,同时也是技能的证明,可以拓宽自己的就业领域。
如果你是一名打工人,可以更快地获得晋升机会,从而获得更高的薪资待遇。
最后分享一本由CDA认证命题专家组成员倾力打造红宝书《精益业务数据分析》,可以帮你在备考过程中事半功倍,祝你早日拿证~
《精益业务数据分析》试读下载:https://edu.cda.cn/group/4/thread/178774
相关文章:

数据分析入门指南:数据库入门(五)
本文将总结CDA认证考试中数据库中部分知识点,内容来源于《CDA模拟题库与备考资料PPT》 。 CDA认证,作为源自中国、面向全球的专业技能认证,覆盖金融、电信、零售、制造、能源、医疗医药、旅游、咨询等多个行业,旨在培养能够胜任数…...

Logback日志异步打印接入指南,输出自定义业务数据
背景 随着应用的请求量上升,日志输出量也会成线性比例的上升,给磁盘IO带来压力与性能瓶颈。应用也遇到了线程池满,是因为大量线程卡在输出日志。为了缓解日志同步打印,会采取异步打印日志。这样会引起日志中的追踪id丢失…...

将iPad 作为Windows电脑副屏的几种方法(二)
将iPad 作为Windows电脑副屏的几种方法(二) 1. 前言2. EV 扩展屏2.1 概述2.2 下载、安装、连接教程2.3 遇到的问题和解决方法2.3.1 平板连接不上电脑 3. Twomon SE3.1 概述3.2 下载安装教程 4. 多屏中心(GlideX)4.1 概述4.2 下载安…...

[word] word表格跨页断开实现教程 #职场发展#媒体
word表格跨页断开实现教程 选中整个word表格 单击鼠标右键,选择“表格属性”选项 切换至“行”标签,找到“允许跨页断行”选项 勾选上“允许跨页断行”,单击“确定”按钮,完成! word表格跨页断开实现教程的下载地址&a…...

《Linux运维总结:基于ARM64架构CPU使用docker-compose一键离线部署单机版tendis2.4.2》
总结:整理不易,如果对你有帮助,可否点赞关注一下? 更多详细内容请参考:《Linux运维篇:Linux系统运维指南》 一、部署背景 由于业务系统的特殊性,我们需要面对不同的客户部署业务系统࿰…...

【Apache Doris】周FAQ集锦:第 14 期
【Apache Doris】周FAQ集锦:第 14 期 SQL问题数据操作问题运维常见问题其它问题关于社区 欢迎查阅本周的 Apache Doris 社区 FAQ 栏目! 在这个栏目中,每周将筛选社区反馈的热门问题和话题,重点回答并进行深入探讨。旨在为广大用户…...
Log4j的原理及应用详解(四)
本系列文章简介: 在软件开发的广阔领域中,日志记录是一项至关重要的活动。它不仅帮助开发者追踪程序的执行流程,还在问题排查、性能监控以及用户行为分析等方面发挥着不可替代的作用。随着软件系统的日益复杂,对日志管理的需求也日…...

农田自动化闸门的结构组成与功能解析
在现代化的农业节水灌溉领域中,农田自动化闸门的应用越来越广泛。它集成了先进的技术,通过自动化控制实现水资源的精准调度和高效利用。本文将围绕农田自动化闸门的结构组成,详细介绍其各个部件的功能和特点。 农田自动化闸门主要由闸门控制箱…...

Python解释器:CPython 解释器
一、什么是python解释器 Python解释器是一种用于执行Python代码的程序。 它将Python源代码转换为机器语言或字节码,从而使计算机能够执行。 1.1 Python解释器分类 1、CPython CPython 是 Python 的主要实现,由 C 语言编写。大多数用户在日常开发中使…...

layui 让table里的下拉框不被遮挡
记录:layui 让table里的下拉框不被遮挡 /* 这个是让table里的下拉框不被遮挡 */ .goods_table .layui-select-title,.goods_table .layui-select-title input{line-height: 28px;height: 28px; }.goods_table .layui-table-cell {overflow: visible !important; }.…...

【性能优化】在大批量数据下使用 HTML+CSS实现走马灯,防止页面卡顿
切换效果 页面结构变化 1.需求背景 项目首页存有一个小的轮播模块,保密原因大概只能这么展示,左侧图片右侧文字,后端一次性返回几百条数据(开发环境下,生产环境只会更多).无法使用分页解决,前端需要懒加载防止页面卡顿 写个小demo演示,如下 2.解决思路 获取到数据后,取第一…...
https和http区别
1、安全性 HTTP信息是明文传输,而HTTPS则通过SSL/TLS协议进行加密传输,确保数据传输的安全性。HTTPS可以验证服务器身份,防止中间人攻击,保护数据的完整性和保密性。 2、端口号 HTTP默认使用80端口,而HTTPS默认使用…...

SD-AI大模型的安装
📑打牌 : da pai ge的个人主页 🌤️个人专栏 : da pai ge的博客专栏 ☁️宝剑锋从磨砺出,梅花香自苦寒来 ☁️运维工程师的职责:监…...
UDP-如何实现客户端与服务器端的通信(一对一、一对多、多对一、多对多之间的通信)
Java中提供了DatagramSocket来实现这个功能 1.服务器端的程序 创建Socket,监听6666端口读取来自客户端的“数据包”,创建数据包(通过DatagramPacket实现数据包的创建)接收数据包从数据包中,读取数据(通过recieve()接收数据和send()发送给数据) 代码如下…...

C++那些事之依赖注入
C那些事之依赖注入 最近星球里面有个小伙伴让更新一下依赖注入,于是写出了这篇文章,来从实际的例子讲解,本文会讲解一些原理与实现,完整的实现代码懒人版放在星球中,我们开始正文。 大纲: 直接依赖接口依赖…...
克隆的TrinityCore服务器网速慢卡顿问题的解决(未解决)
一台TrinityCore服务器,采用的是备份克隆安装的方式,在FreeBSD bhyve 中安装Ubuntu,安装细节见如下两篇文档:尝试在FreeBSD 的jail、bhyve里安装TrinityCore-CSDN博客 备份和镜像TrinityCore_魔兽世界 updating auth database...…...

独立站外链如何影响搜索引擎排名?
独立站的外链对搜索引擎排名有着非常重要的影响。简单来说,外链就像是别的网站对你的网站投的信任票。每一条外链都告诉搜索引擎:“这个网站的内容是有价值的,值得推荐。”因此,外链的数量和质量直接影响你的网站在搜索引擎中的排…...
java设计模式:03-04-装饰器模式
装饰器模式(Decorator Pattern) 装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许向一个现有的对象添加新的功能,同时又不改变其结构。装饰器模式通过创建一个装饰类来包装原有的类,…...

通过splunk web服务将服务器上文件下载到本地
1. 需求说明 工作中经常遇到需要将服务器上的文件下载到本地,但是由于各种网络环境限制,没办法使用winscp或者xftp工具,那么如何将服务器上的文件下载下来呢? 这里提供一种思路: 如果服务器上安装有web服务,可将待下…...
Node.js 路由
Node.js 路由 介绍 Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,它允许开发者使用 JavaScript 编写服务器端代码。Node.js 的一个核心特性是其事件驱动和非阻塞 I/O 模型,这使得它非常适合处理高并发和 I/O 密集型的应用程序。在 Node.js 中,路由是指确定应…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...

linux之kylin系统nginx的安装
一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源(HTML/CSS/图片等),响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址,提高安全性 3.负载均衡服务器 支持多种策略分发流量…...
进程地址空间(比特课总结)
一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...

linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...