掌握SQL基础:使用sqlite进行桌面学习(第一部分)

发表时间: 2021-07-11 22:36

Excel是数据分析的第一生产力软件。随着数字化、数智化进程,我们所有人都不可避免地进入到真正的大数据时代。Excel在处理的数据量较大时,其性能表现就开始不尽如人意了。因此,我建议爱学习的朋友们,花点儿时间了解SQL - 结构化查询语言。

SQL,结构化查询语言,我们听说过的关系数据库,比如Oracle, DB2, SQL Server,MySQL, PostgreSQL,以及阿里、腾讯、华为等各家的数据库系统,全部统统都支持SQL!查阅一下数据分析师岗位的任职技能要求中,99.99%的都会要求SQL技能。

学习SQL,我们不需要安装上面提到的专业的数据库软件。只使用我们的个人桌面电脑,和sqlite就足够入门了。

下载安装 DB Browser for SQLite

搜索"DB Browser for SQLite", 从官方网站 "Downloads - DB Browser for SQLite (sqlitebrowser.org)"处下载你所需要的版本。

从下图中,你可以找到下载的网址,不论是Windows用户还是苹果电脑用户,都支持。

下载页面截图

下载后,和普通的应用软件安装一样的方式安装即可:双击、按提示安装即可。

这款软件默认会使用系统的语言习惯来显示界面,因此,通常它打开后会显示中文界面。以下截图是我电脑上的情况:


DB Browser for SQLite 中文界面

SQLite版本的"Hello world!"

打印"Hello world!"是程序员们入门学习编程时会做的第一件事情。我们学SQL也一样一样的

首先,我们点击“新建数据库”,此时程序会弹出一个保存文件对话框,输入"example-1",然后确认保存。

接着,程序会弹出新建表的对话框。“表”是SQL中的核心概念,它对应的就是我们在excel中的一张表。excel中默认的第一张“表”的名称是sheet1。此外,我们还需要给表新增字段,与excel默认已经使用"A,B,C,......"命名了字段不同,SQL中的表通常需要给更有意义的字段名,这也是我们在使用excel时,常在第一行或第二行作的事情。

如下图,我们新建了一张名为"helloworld“的表。我们还新建了三个字段。建立字段时我们需要指定类型。INTEGER代表整数,比如我们在excel中的序号。TEXT代表文本。


新建 helloworld表

上图中,上半部分是建表的描述界面,下半部分是对应的SQL语句。我们复制如下:

CREATE TABLE "helloworld" (	"id"	INTEGER,	"name"	TEXT NOT NULL,	"message"	TEXT,	PRIMARY KEY("id"));
  1. CREATE TABLE 表示创建表。它是SQL中定义的创建表的语句,它的含义与平常使用的英语是一致的。
  2. PRIMARY KEY 表示唯一识别表单中一行的字段名称。现阶段我们可以认为它与excel中的序号是类似的,就是用于唯一标识一行。

在上面的界面中,我们点击"OK"按钮,即可完成表的创建过程。

有了表的定义和结构以后,我们就可以查询了。但现在我们的表中没有数据。因此,我们还需要新增一条记录。

如下图,“浏览数据”功能页,可用于浏览数据。其实它也可以用于新增和修改数据。这一点,也是与excel的表单类似(当然了,这个界面的美观程度和功能丰富程度是不能和excel比的)。


数据浏览和编辑页面

点击新增记录图标(如下标记处)


新增数据

这个界面操作对于的SQL语句是:

INSERT INTO helloworld (id, name, message)VALUES (1, '赵子龙', '三国勇士');

请注意,在SQL中,字符串是用单引号。

上图中,我们新增了一条记录。但要注意,新增的记录并不会自动保存到数据库文件中。我们还需要点击“写入更改”才能保存。在SQL中,写入更改,又叫提交,语句是COMMIT。


写入更改

接下来,我们再新增几条记录,如下:


再新增2条数据记录

我们注意到列名下方的“过滤”输入框。输入条件,即可过滤。比如我们输入“赵”,则会匹配名字中含“赵”字记录行。截图如下:


列过滤效果

上述过滤操作对应的SQL语句是:

SELECT * FROM helloworld WHERE name LIKE '%赵%'

我们可以在“执行SQL”页中试着输入SQL语句执行。


SQL窗口

在输入了SQL语句后,执行。

总结

在文本中,我们介绍了一款桌面SQL工具 SQL Browser for SQLite,并用它设计了一张表,写入了几行记录,并作了查询过滤。

SQL作为数据分析的必备工具语言,它十分强大。本文的介绍只是让大家知道有一个容易使用的学习工具,而没有涉及到SQL本身的强大功能。