SQL学习线路图:如何学习SQL?分步指南

2021年11月28日18:19:13 发表评论 1,040 次浏览
如何学习 SQL

近年来,随着数字技术的逐渐转变,每秒产生数万亿字节的数据。一些专家正确地说——“数据是新的石油!”。用户产生的数据有多种形式——这些数据是通过社交媒体浏览、狂看电影、通过在线门户购物、网上银行交易等产生的。

那么这么大的数据量有什么用呢?这些数据是根据企业的需要组织起来的,进行有针对性的广告,吸引顾客查看和购买他们的产品。这些数据用于分析客户的行为,以改善用户体验,从而增加销售额或提高服务质量。

然而,生成的数据是高度无组织的,需要在专家分析之前进行清理。此外,存储如此大量的数据是另一项需要处理的重大任务。如今,有几种大数据解决方案可帮助公司存储、组织和分析大量数据。但是来自网站的已经结构化的数据呢?这些包括你的登录/注册详细信息、信用卡详细信息、用户个人资料详细信息、在线购买历史记录等。这些数据可以在你下次访问他们的网站时被公司重复使用。要重用它,很明显他们需要将它存储在某个安全的地方。

如何学习SQL?大型服务器节点设置在具有存储此类数据的巨大数据库的云或物理机器上。现在,可以将多种类型的数据库用于不同的目的。而要管理不同类型的数据库,就需要一定的数据库管理技能。让我们首先讨论不同类型的数据库,以及SQL学习线路图。

1. 分层数据库

这种类型的数据库有一个树结构,它们有一个父节点,每个父节点有几个与分支链接的子节点。父节点代表高层数据,子节点代表低层信息,分支代表这些节点之间的关系。

2. 面向对象的数据库

这种类型的数据库具有关键组件,例如类和对象。对象可以定义为类的实时实例。它们保存要存储的记录或实际数据。类具有定义要对这些对象或数据执行的操作的函数、方法或变量。

3. 网络数据库

这种类型的数据库具有网络结构。它支持节点之间的多对多关系,旨在解决分层数据库的问题。

4. 关系数据库

在此类数据库中,数据存储在记录或表中,其列定义数据类型,行包含实际信息。表可以根据条件与其他表形成关系。

跨组织用于以有组织、安全和健壮的方式存储数据的最常见的数据库类型是关系数据库。在访问某些信息集时,关系数据库具有高度的可扩展性和灵活性。SQL 或结构化查询语言是一种编程语言,用于查询关系数据库并从表中找出记录或信息。

SQL学习指南:什么是 SQL?

如前所述,SQL 是一种编程语言,可用于查询关系数据库中的数据。你可以对关系数据库中的表进行创建、更新、修改、删除和其他操作。SQL 是一种声明性语言,或者换句话说,它是一种过程语言。这意味着用户可以指定什么类型的数据,而不是指定它并获取数据。

传统文件系统的问题

SQL学习线路图:在 SQL 或其他数据库发明之前,数据存储在文件系统中,有很多与数据管理不善相关的用途。尽管我们认为文件系统看起来组织得井井有条,但在存储、访问和修改连续数据量时,它们仍然存在多个缺陷。让我们讨论其中的几个。

1. 数据冗余

数据冗余意味着相同的信息存储在一个或多个地方,导致不必要的存储空间使用。在基于文件的数据库的情况下,没有办法找出重复的文件。此外,因此,文件系统会面临安全隐患和信息泄漏。

2. 数据依赖

在文件系统中,需要遵循特定的结构。如果我们更改任何记录的格式,我们需要更新所有依赖于它的数据格式。此外,基于文件系统的数据库结构的变化在很大程度上影响了应用程序的性能。

3. 数据共享

数据共享是文件系统中的一个主要问题,因为它会导致重大的安全风险。即使我们使用了诸如加密文件、密码保护它们、锁定其中的一部分等安全措施,这些措施也不足以确保完全安全。

由于上述所有原因,迫切需要创建一种新的数据存储形式来解决所有这些问题。

SQL 的重要性

让我们来看看使 SQL 成为如此流行的查询语言的几个要点。

它是普遍采用的专家,专业人士在处理和组织数据时会毫不犹豫地转向 SQL。所有流行的开源和免费数据库都支持 SQL 查询信息。

2. 易学

SQL 的语法类似于简单的自然语言,与 Java、C++ 等其他编程语言的复杂语法相比,它非常容易学习。

3.处理大量数据

与 excel 和电子表格相比,SQL 可以轻松地处理大型数据集,只需极少的管理工作。

4. 更好地洞察数据集

要从数据中检索有用的见解,你需要更好地理解数据。SQL 允许你使用命令来获取数据集之间的关系以更好地理解它们。

5. 标准化 

SQL 是 ISO 和 ANSI 都标准化的查询语言。它非常稳定,在语法上没有大的更新,一旦你学会了它,你就不需要太关注更新的版本了。

6. 热门技能

如果你想从事数据科学、机器学习、数据库管理、数据分析等领域的工作,SQL 是一项常见技能,在就业市场上有很大的需求。

为什么要学习 SQL?

如何学习SQL?让我们浏览几个要点,让你了解为什么 SQL 是最重要的技能之一,可以让你掌握最新的技能和技术。

  1. 它具有许多定义为集合的处理功能,例如数据定义语言(创建、更改和删除模式)、数据操作语言(更新、插入、删除、检索表)、数据控制语言(撤销权限或授予它们) .
  2. 它允许你对数据库执行完整性检查并规范化数据库以消除与基于文件系统的数据库相关的数据冗余和其他问题。
  3. 只需使用一行命令,你就可以检索高度过滤的数据以及多条记录。
  4. 一旦掌握了该语言,就可以使用复杂的查询来更好地了解数据。
  5. 它具有简单的语法、高度可扩展性、提供高安全性并且拥有庞大的社区。
  6. 它是交互式的、高度便携的,可以创建表格的多个视图以进行工作和试验,并且具有明确定义的标准。

SQL 的职业生涯

SQL学习指南:在以数据为中心的组织中,大量的工作和职业需要 SQL 作为一项技能。这些组织寻求 SQL 专业人士,他们可以将他们的分析思维应用到 SQL 中,以更好地洞察大量数据。如果你是一名具有处理数据和操作数据的诀窍的候选人,那么你绝对应该寻求 SQL 编程方面的职业。可以在基于云的组织和使用本地数据库的组织中找到与 SQL 相关的就业市场。

教育要求

  • 招聘人员在 SQL 专业人员中寻求的资格可能因公司而异。这在很大程度上取决于投资回报率、客户要求、工作类型等。
  • 基本教育资格包括计算机科学工程、IT 甚至 IT 领域的专业课程的学士或硕士学位。
  • 其他认证,如数据库开发人员、管理员、设计师、架构师等,将为你的投资组合增添色彩,并使你在数千名其他候选人中占据优势。
  • 具有 PL/SQL、ETL 等方面的经验将是有益的。

工作职位

  • SQL Server 是第三大最受欢迎的数据库服务器,数以百万计的专业人士目前正在从事直接或间接需要 SQL 作为技能的不同角色。
  • SQL 的顶级职业道路包括 - 数据库管理员、商业智能专业人员、数据科学家、数据库开发人员、数据库测试人员、ETL 开发人员、BI 应用程序开发人员、大数据专家、云数据库工程师、数据库迁移工程师等。

薪水

  • SQL 专业人员的平均工资在很大程度上取决于他选择的职业道路。通常,具有 5 年以上 SQL 工作经验的专业人员的平均工资高于应届生。
  • 根据payscale 2018年的一份报告,美国SQL开发人员的平均工资约为6.5万美元,高级SQL开发人员为8.5万美元,高级数据库管理员约为10万美元,生产DBA的平均工资可以高达 13 万美元。

学习 SQL 的先决条件

要开始学习 SQL 等查询语言,你必须了解以下领域。

  • 数据库管理系统。
  • DBMS 概念,如规范化、ACID 属性、事务等。
  • ER 图、关系模型以及所有关于关系数据库的内容。

除此之外,一个人应该具有良好的分析技能,并了解将数据存储在有组织的关系数据库中,以便通过 SQL 从复杂的查询中生成有用的见解。

请注意,即使你没有计算机科学或 IT 背景,也不具备数据库管理系统的先验知识,你也无需担心。我们将为你提供所有资源、课程、教程和文档,你将在本文后面从基础到高级学习概念。所以,请坚持到最后。

SQL学习线路图:如何安装 SQL?

让我们看看如何在你的 Windows 机器上安装 SQL Server,它将帮助你编写 SQL 查询,例如创建数据库、表、在表中插入数据、修改和更新数据等。

你可以从 Microsoft官方网站下载 Microsoft SQL Server 。

当前最新版本是 SQL Server 2019。请注意,Microsoft 允许你下载 SQL Server 的两个免费版本。它们是DeveloperExpress版本。MS SQL Server Developer Edition 具有所有必需的功能,但问题是我们无法将其用于生产。但是,另一个名为 MS SQL Server Express 版的免费版本可用于生产,但功能有限。对于那些想要学习 SQL 的人来说,最好从开发者版开始。

立即下载按钮。这将下载一个可执行文件,你可以运行该文件来安装 SQL Server。安装开始后,它会要求你从三种不同的安装类型中选择一种 -基本、自定义下载媒体。Basic 选项会自动选择开始使用 SQL Server 所需的所有基本包。自定义选项将允许你选择自己的包,下载媒体选项将允许你下载所有包,然后将它们安装在不同的机器上。

我们将选择基本选项。之后,接受所有许可协议,选择安装位置,然后安装服务器。成功安装后,你可以单击“立即连接”按钮开始执行查询。

用于 SQL 的 IDE

如何学习SQL?IDE 或集成开发环境是一种图形工具,可让你管理所有与应用程序相关的文件并使用有用的包、自动完成功能、语法高亮器等,从而使你的开发体验更好。

虽然你可以直接从命令行本身创建和管理数据库和表,但使用 IDE 总是有助于获得所有数据库、查询、表和其他组件的鸟瞰图。事实上,一些 IDE 有帮助部分向你解释基本命令及其用法。你只需填写文本字段,选择各种预先格式化的命令,单击“确定”按钮,你的工作就完成了。就这么简单。此外,一些 IDE 还允许你备份和恢复数据库和表。

因此,在你接触 SQL 之前,选择满足你需求的 IDE 始终是一个明智的决定。以下是可用于编写复杂 SQL 查询的顶级 IDE 列表。

1.DBeaver

DBeaver是一个开源的、基于 Java 的数据库 IDE。它可以免费使用并具有强大的功能,可为你提供流畅的开发体验。

特征 -

  1. 它允许你将表导出到 CSV 文件并转储、恢复表。
  2. 它可以让你保存最常用的 SQL 命令。你可以稍后为其他项目加载这些保存的命令。
  3. 它也有几个颜色主题。
  4. 它有一个会话管理工具。
  5. 它允许你比较两个数据库表及其结构。
  6. 已执行的查询美观地显示在单独的界面中。
  7. 它允许你编辑数据库表的单元格并以图形方式提交它们。

2.phpMyAdmin

PHPMyAdmin是一个功能丰富、基于 HTML 的开源工具,可用于管理数据库。

特征 -

  1. 它允许你管理用户和权限。
  2. 它可以支持多种语言。
  3. 它允许创建和编辑结果行的查询和列。
  4. 你可以保存你的查询以备后用。
  5. IDE 是高度可配置的,可以隐藏或显示表格、注释、字符集、时间戳等。
  6. 你可以创建数据库的备份、将它们转换为 CSV 文件、导入 SQL 转储等。
  7. 它允许你管理多个服务器。
  8. 你可以使用 QBE 创建复杂的查询。

3.Adminer

Adminer可以用作 PHPMyAdmin 的替代品。它基于 Web,支持大量插件,让你可以使用多个数据库,例如 Oracle、SQLite 等。

特点-

  1. 连接到数据库、创建新数据库等。
  2. 即使外键连接它们,你也可以打印数据库的模式。
  3. 你可以设置和管理用户权限和权限,甚至可以以管理员身份更改它们。
  4. 帮助部分相当不错;你可以显示具有指向文档的引用链接的变量。
  5. 你可以轻松管理表和事件的分区。

在线编译器

如果你不想经历下载 SQL Server 并安装它们、下载和安装 IDE 的繁忙过程,你可以随时使用按需提供的大量在线编译器之一。一些最流行的 SQL 在线编译器是-mycompilertutorialspointJDoodle

学习 SQL 的路线图

SQL学习指南:以前了解数据库管理概念和关系数据库可能会有所帮助。但是,你并不需要真正了解它们才能开始使用 SQL。这是一个完整的路线图,可帮助你开始使用 SQL。

  1. 从学习数据库管理的基本概念开始,例如数据库、事务、关系模型、规范化技术、表、模式中的不同键等。
  2. 在你学习了数据库管理的基础知识后,你可以继续学习 SQL 的基本主题和概念。他们之中有一些是 -
    1. SQL 语法、数据类型、变量等。
    2. Select、Where、And、Or、Not、Order By、命令。
    3. 插入、更新、删除命令。
    4. Min、Max、Count、Average、Sum、命令。
    5. 像,在,之间,顶部,分组依据,命令。
    6. 连接,例如内部、外部、左、右、完全、自连接。
    7. SQL 具有、存在、任何、所有、大小写、空函数等。
    8. SQL 数据库相关命令,如创建、删除、备份等。
    9. SQL 表命令,例如 create、alter、update、drop 等。
    10. SQL 约束,例如 not null、unique、check、default、auto-increment 等。
    11. SQL 键,例如主键、唯一键、外键等。
    12. SQL 高级概念,如视图、触发器、函数、PL/SQL、注入、托管等。
  3. 在掌握了上述所有主题的知识后,你就可以开始创建数据库和表并执行你在理论上学到的命令。

如果你遵循此路线图,你将学习数据库的概念作为 SQL 逗号,这肯定会帮助你很好地了解整个数据库管理概念,从而帮助你获得优于其他候选人的优势,从而获得良好的职业 DBMS。

你还可以阅读SQL Cheat Sheet以快速了解路线图。

SQL 课程和教程

SQL学习线路图:以下是在线课程和教程的列表,你可以使用它们以更详细和更实际的方式学习 SQL。使用这些课程将为你提供清晰的指南和途径以及一些项目,以增强你的投资组合并开始你的职业生涯。

1.终极 MySQL 训练营:从 SQL 初学者到专家 - 作者 Udemy

  • 这是你将遇到的最详细的课程之一。要开始学习本课程,你无需具备任何数据库、SQL 或 MySQL 方面的知识。这是完全的初学者。但是,如果你以前有过编程经验,你将能够更好地理解这些概念。
  • 它将带你通过实际操作的实际项目了解详细的概念,这将帮助你更好地学习这些概念。完成本教程后,你可以轻松开发和构建复杂的数据库。

特征 -

  1. 你将能够创建数据库、使用现有数据库并与之交互。
  2. 编写复杂的 SQL 查询对你来说将是小菜一碟。
  3. 你将使用 MySQL 和 Node.js 构建一个 Web 应用程序。

资源 - 20 小时视频、141 篇文章、4 个资源、证书。
价格- 8640 印度卢比
评级- 51,134 评级为 4.6。

2. Excel 到 MySQL:业务专业化的分析技术

  • 这是杜克大学通过 Coursera 平台提供的专业。该专业包括5门课程。在本课程的帮助下,你将能够通过分析关键指标将数据转化为有价值的见解并推动业务流程的变革。
  • 你将学习如何使用 Excel 和 SQL 管理大数据并对如此大量的数据进行分析。你还将学习使用 tableau 的数据可视化技术。

特征 -

  1. 你将能够使用 MySQL 和 Excel 管理大数据。
  2. 你将学习使用 Tableau 的数据可视化。
  3. 你将掌握数据分析。
  4. 你将创建模型、预测、设计并执行分析。
  5. 你将从事一个现实生活中的项目。

资源 - 5 门课程,大约 7 个月的内容。
价格- 每月 3576 印度卢比。
评分- 4.6 分 18,019 评分。

3.数据库简介 - EdX

  • 这是 EdX 的自定进度课程,涵盖从初级到高级的所有与数据库和 SQL 相关的主题。它由行业专家教授和领导,将帮助你建立数据库编程技能以提高你的知识。通过他们的讲座,你将学习如何构建 SQL 数据库;你将学习数据库等的基础知识。

特征 -

  1. 你将学习如何创建 SQL 查询以在数据库中执行 CRUD 操作。
  2. 你将学习诸如参照完整性和完整性约束等概念。
  3. 你将绘制 ER 等数据模型,并将 SQL 查询应用于基于这些模型的模式。
  4. 你将能够学习过程、触发器、函数等。
  5. 你将了解并发控制。

资源 - 4 个月的内容,每周 6-8 小时。文章、视频教程、测验。
价格 - 33144 印度卢比
评级 - 4.5。

查看一些顶级SQL 认证,它们将帮助你在 2021 年取得职业生涯的飞跃。

学习 SQL 和 DBMS 的热门免费资源

除了我们上面讨论的所有昂贵的在线课程和教程之外,你还可以利用一些在线可用的顶级免费资源来详细学习 SQL 和 DBMS 的概念。一些顶级免费资源是 -

DBMS 在线资源

SQL 在线资源

从文档中学习 SQL

除了上面提到的所有在线付费和免费课程和教程,你还可以参考 Microsoft 提供的官方文档,这些文档将帮助你以最佳方式学习 SQL。文档以最详细的方式提供了有关命令和概念的详细信息,从公正的角度解释了这些概念及其用法。查看Microsoft 的 SQL Server官方教程

初学者的顶级 SQL 项目

学习任何编程概念的最佳方法是从项目开始,而不是仅仅掌握理论和语法。项目可帮助你找出在现实世界中将面临的问题的解决方案。他们会让你对这些主题有更深入的了解;它将帮助你应用你的理论知识来创造出色的产品,并明显提升你的简历和投资组合。

项目是对你技能的验证。作为初学者,你应该从具有较少功能和模块的小项目开始,以便在出现错误时不会放弃。在构建了几个小项目之后,你可以为这些项目添加额外的功能或构建一个新的复杂项目。

这是顶级初学者 SQL 项目的列表。

1.图书馆管理系统

你可以创建一个连接到 SQL 数据库的简单 Web 应用程序,你可以在其中存储与书籍相关的详细信息,例如作者、价格、出版物、内容、类型等。你可以创建一个门户网站,学生、研究人员和教职员工可以在其中使用他们的 ID用于在特定时间段内注册书籍的卡,如果在时间范围内未归还书籍,则处以罚款,创建支付门户,创建另一个数据库来存储用户个人资料的详细信息等。

2. 网上零售应用

你可以创建另一个 Web 应用程序,该应用程序允许用户创建配置文件、显示项目列表和价格详细信息、供应商详细信息等,允许他们向卡中添加产品、添加信用卡信息、进行购买、跟踪交付等。

3. 铁路订票系统

你可以创建一个允许用户预订火车票的平台,并具有用户登录、支付功能、显示位置之间的火车列表及其时间、可用座位数量、火车路线等功能。

4. 医院管理系统

你可以与诊所合作或创建一个独立的应用程序,允许患者和医生通过视频会议相互交流和咨询、开药、支付费用、管理约会、安排电话、显示药物列表及其信息等。

5. 人力资源管理系统

你可以创建另一个应用程序,允许小公司和组织管理其人力资源。它跟踪他们的员工及其绩效,包括薪酬等级、部门、职责、时间安排、分配的项目和其他重要信息。

查看我们关于顶级 SQL 项目的指南

最佳 SQL 认证

SQL学习指南:在你对理论概念和实践概念有了详细的了解后,下一步是创建一个投资组合,以在面试中突出你的 SQL 技能。你已经在 SQL 中完成了一些项目,下一步是获得 SQL 官方供应商的认可和可验证的认证。一些经认可的 SQL 认证是 -

要获取有关这些认证以及其他顶级认证课程的详细信息,你可以访问本指南,了解如何提升你的职业生涯的 5 大 SQL Server 认证。

SQL 面试问题

如何学习SQL?在准备好 SQL、项目、认证等的所有理论和实践概念之后,是时候为重要的一天做准备了。你现在可以自信地前进到下一个也是最后一步,开始准备与 SQL 相关的问题,以在面试中取得出色的成绩。当你参加面试时,请始终记住用实际和现实生活场景来支持你的所有理论答案。

这是最常见的 SQL 面试问题列表。

  • 问题:传统数据库模型和关系数据库模型的区别?
  • 问题:是否可以在 SQL 的代码片段中注入 PL/SQL?
  • 问题:DML 是什么意思并解释它的一些操作。
  • 问题:解释连接和不同类型的连接。
  • 问题:解释SQL事务中ACID的概念。
  • 问题:你能解释一下 SQL 中使用的 dateadd 术语吗?
  • 问题:MySQL 和 SQL 之间的根本区别。
  • 问题:是否可以同时使用 WHERE 子句和 TRUNCATE?
  • 问题:定义 COMMIT
  • 问题:区分 SQL 中的表和字段。

你可以在此处获取SQL QNA的完整列表。

SQL学习线路图总结

  • 在本指南中,我们首先对 SQL 和数据库进行了基本介绍,并且还讨论了不同类型的数据库。我们已经讨论了什么是 SQL 以及传统文件系统的问题。我们还讨论了 SQL 的重要性以及为什么它仍然是当前市场上的热门工作。
  • 然后,我们浏览了你应该在 2021 年学习 SQL 的几个原因,并讨论了 SQL 的几个职业机会。我们还讨论了学习 SQL 和在 Windows 机器上安装 SQL Server 的先决条件。
  • 接下来,我们讨论了一些可以用来改善 SQL 编程体验的顶级 IDE 和在线编译器。我们很快讨论了一个详细的路线图,它可以帮助你学习 SQL 以及一些在线付费和免费课程和教程。我们还讨论了如何以最佳方式有效地使用文档来学习 SQL。
  • 在那之后,我们讨论了如何通过做项目、获取经认可和可验证的认证以及通过精选的 SQL 面试问题的精选列表来改进面试准备来改进你的投资组合。

我们希望通过这份详细的指南,你将获得完整而准确的 2021 年 SQL 学习路线图。

木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: