实体关系图 (ERD) 是查看数据库中数据的常用方式
NoSQL表示 Not only SQL(不仅仅是 SQL)。NoSQL 更适用于基于网络数据的环境,而不太适用于基于电子表格的数据分析。最常用的 NoSQL 语言之一是 MongoDB。Udacity 上有一个关于 MongoDB 的完整课程,你可以免费观看 此处(https://cn.udacity.com/course/data-wrangling-with-mongodb--ud032)
关于 SQL 数据库中所存储数据的几个要点:
-
数据库中的数据存储在类似于 Excel 电子表格的表中。
大多数情况下,可以将数据库视为一堆 Excel 电子表格。每个电子表格都有行和列。每行保存有关交易、个人、公司等的数据。而每列所保存的数据与你关心的某一特定行相关,如名称、位置、唯一身份等。
-
同一列中的所有数据必须符合数据类型。
将整个列认为是定量离散的或是某种字符串。这说明如果特定列中有一行字符串,那么整个列可能会更改为文本数据类型。 如果想使用此列进行数学计算,这可能会非常糟糕!
-
列类型一致是快速使用数据库的主要原因之一。
数据库通常会存储海量数据。因此,知道这些列都是相同类型的数据意味着可快速从数据库获取数据。
SQL 的关键是理解语句。这几个语句包括:
- CREATE TABLE 是一个在数据库中创建新表的语句。
- DROP TABLE 是删除数据库中表的语句。
- SELECT 读取并显示数据。我们将这称为查询。
SQL 语句是可以读取和处理数据的代码。但这不是一个真正的句子。 SQL 不区分大小写 - 这意味着可以在代码中的任何位置写入大写和小写。另外,还可以使用分号结束 SQL 语句,但某些 SQL 环境结尾时不需要分号。
- SELECT用于提醒查询要返回哪些列(*号意味着选择所有列)。
- FROM用于提醒查询在哪个表中查询。注意,这个表中需要有列。
规定查询格式:
大写
常见的格式惯例:大写 SELECT 和 FROM,小写表和列名称。
表和变量名中不需要空格
通常在列名中使用下划线,避免使用空格。 在 SQL 中使用空格有点麻烦。 在 Postgres 中,如果列或表名称中有空格,就需要使用双引号括住这些列/表名称(例如:FROM \"Table Name\",而不是 FROM table_name)。在其他环境中,可能会使用方括号(例如:FROM [Table Name])。
在查询中使用空格
SQL 查询忽略空格,因此可以根据需要在代码之间添加尽可能多的空格和空行,并且查询结果是相同的。
SQL 不区分大小写
分号
根据 SQL 环境,查询结尾可能需要一个执行的分号。 这个"要求"在其他环境中比较灵活。我们认为在每个语句的末尾添加一个分号是最好的做法,如果环境能够一次显示多个结果,那么这样做还可以一次运行多个命令。
LIMIT 10
如果想要查看表的前几行时,LIMIT 语句就能派上用场。这可比加载整个数据集要快得多。
LIMIT 命令始终是查询的最后一部分。
排序(ORDER BY)
ORDER BY 语句始终在 SELECT 和 FROM 语句之后,但位于 LIMIT 语句之前。
可以在 ORDER BY 语句中的列之后添加 DESC
,然后按降序排序,因为默认是按升序排序的,字母a-z,日期从早到晚。
ORDER BY可以选择多列