如果你想在数据科学领域取得进展,SQL是最重要的学习语言之一。世界上几乎所有的数据都存在于数据库中,而SQL是你需要用来访问和分析大多数数据的语言。但是,学习SQL有时会是一种令人沮丧的经历。在这篇文章中,我们将分享帮助你在线学习SQL的技巧和窍门。
了解SQL
为了了解如何有效地在线学习SQL,让我们花点时间来了解关于SQL的几个关键问题。
SQL是结构化查询语言的标准。当你使用SQL时,你几乎总是在与数据库中的数据打交道,这些数据被结构化为多个表格。你写查询,以便选择特定的数据,并根据你的需要进行转换。
很多SQL工作涉及到使用连接来连接不同表中的特定数据,以便你可以分析它。
有许多不同 “口味 “的SQL
有不同版本(或风味)的SQL。其中最有名的是SQL Server、PostgreSQL、Oracle、MySQL和SQLite。这可能会给即将开始学习的人带来一些问题–我应该选择哪一种?
简短的回答是,这并不重要。每种SQL语言使用的绝大多数语法都是一样的–“语言 “之间的区别主要是在上面添加的可选功能。此外,作为一个初学者,你要学习的几乎所有的SQL语法都是所有SQL风格所共有的。
作为一个初学者,假装所有这些不同的风格都不存在,而只是专注于学习SQL基础知识。在你达到更高级的水平并需要担心这些差异之前,对它们的态度是一样的。
上述建议的一个例外是针对NoSQL数据库。NoSQL数据库,顾名思义,并不是传统意义上的SQL数据库。虽然NoSQL数据库最近越来越受欢迎,看起来是一个值得学习的 “性感 “东西,但与 “真正的 “SQL味道相比,它们的使用量微乎其微,你最好把时间花在学习SQL上,从中你会得到更多的价值。
通过实践SQL来学习SQL
为了有效地学习SQL,你将不得不写大量的查询。这意味着,为了成功地在网上学习SQL,你不能仅仅依靠视频或基于文本的课程,认为这就足够了。你必须把你所学到的东西付诸实践。你需要某种设置,在那里你可以写查询,并与现实生活中的数据一起工作。
找到结构化的数据来学习SQL是非常困难的。虽然网上有成千上万的数据集对学习有用,但几乎所有的数据都是 “平面文件”–一个非结构化的花哨的词。
为了学习SQL,你需要找到有趣的数据,然后通过将其分割成多个表来准备,然后才能练习。这为入门创造了一个非常高的门槛。
此外,在你的电脑上安装数据库软件可能很麻烦,而且很耗时。当你可以直接进入并开始编写查询,而不是花几个小时准备开始时,就更容易保持积极性。
解决办法是什么?找到一个课程,你可以通过在浏览器中直接写SQL查询来在线学习SQL。这不仅为你节省了在电脑上设置东西的时间和精力,你还可以使用反映真实世界SQL使用情况的结构化数据。
但是,无论你选择在哪里学习,请记住尽早和经常将其付诸实践的重要性。如果你在 “学习SQL”,但没有实际编写和运行SQL查询来应用你所学到的知识,那么当你在现实世界中使用SQL时,很有可能会遇到困难。
为艰难的、现实世界中的SQL做好准备
在网上学习SQL时要记住的另一件事是,在现实世界中编写SQL是很复杂的。我们在前面简单说过,你需要使用连接来连接多个数据库表中的数据。
大多数课程并没有为使用许多连接编写查询的复杂性做好准备,所以你要找到一个超越基础知识的课程。你要找到一个能让你伸展的课程,教你做一些艰难的事情。
你还需要足够复杂的数据来进行练习–很多SQL课程会用有两到三个表的数据库来教你连接。但在现实世界中编写SQL时,你往往需要连接四个或更多的表,所以最好是在学习时就开始面对这种复杂性,而不是在工作时才第一次面对它。
练习使用SQL回答问题
在使用SQL时,有一个常见的工作流程你会反复看到。
- 理解你需要用数据回答的问题。
- 形成能够回答你的问题的数据结构。
- 写一个SQL查询,将数据库表中的数据进行转换,以回答你的问题。
做好这些步骤需要大量的练习。获得练习的理想方式是建立项目,但正如我们前面所讨论的,自己建立一个SQL项目有很多障碍。这并不意味着你做不到,但这绝对是一个挑战