电子表格可能是任何组织中最关键的要素之一(无论其类型)。很多情况下,您需要将一份非常重要的电子表格导入数据库服务器,以便能够高效查询。本教程将带您在 PostgreSQL 中完成这一操作。
本教程假设您已熟悉 SQL,并了解如何在 PostgreSQL 中编写简单的 SQL 查询。如果您是 SQL 新手,以下资源可能会有所帮助:
本教程分为以下两个主要部分:
- 将电子表格转换为 .csv 文件
- 将 .csv 文件导入 PostgreSQL 数据库
将电子表格转换为 .csv 文件
首先,您需要准备一份电子表格。您可以在任意 Excel 编辑器(如 Google 表格、Microsoft Excel 等)中创建。若要学习电子表格基础,您可以参加 DataCamp 的电子表格基础课程,或阅读这篇初学者电子表格教程。为便于跟随本教程,您可以使用这份电子表格,其中包含以下列:
- ID
- Name
- Age
- Percentage Marks
该电子表格共包含 20 条记录。
让我们快速看一下其快照(前 10 行):
该电子表格包含部分大学生的信息。
我们可以从快照中推断各列可能的数据类型:
- ID、Age 和 Percentage Marks 为数值列。更具体地说,ID 和 Age 列可以为整数类型,
Percentage Marks 列可以为浮点数类型。
Name 列为字符数据类型。
将这份电子表格(也可称为数据集)导入 PostgreSQL 数据库的最简便方法,是先将其转换为 .csv 文件,再导入 PostgreSQL。CSV 代表逗号分隔值,具有两个主要优势:
- .csv 文件比电子表格轻量得多,因此在内存较低的环境中更易处理。
- PostgreSQL 内置了许多用于高效处理 .csv 文件的实用工具。
每种 Excel 编辑器都支持将电子表格转换为 .csv 文件。在 Google 表格中,您可以通过以下路径操作:文件 -> 下载 -> 逗号分隔值。
将 .csv 文件导入 PostgreSQL 数据库
现在,要把刚刚创建的 .csv 文件导入 PostgreSQL,您首先需要一个 PostgreSQL 数据库。我们使用 pgAdmin 界面快速创建一个。
您可以按自己的喜好创建任意名称的数据库。完成后,需要在该数据库中创建一张表,用于存放将要导入的 .csv 文件中的记录。我们在您刚创建的数据库中建立一张名为 Student_Records 的表。
CREATE TABLE Student_Records
(
ID serial NOT NULL,
Name varchar(50),
Age SMALLINT,
Percentage_Marks float8
);
技术支持
您沿用了上文讨论过的各列数据类型。为方便起见,也保持了相同的列名。现在在 pgAdmin 中导航到刚创建的表,右键该表并从选项中选择 Import。供您参考:https://www.loom.com/share/2eeb1a2c94bf4f928c3ffa5b1b72eef4。
您可以忽略在导入过程中于演示视频中出现的错误。可以通过运行 select 查询来验证记录是否已正确导入。
现在我们来看如何在 psql 提示符中完成上述操作。为此,先使用 truncate table Student_Records; 语句清空 Student_Records 表。
接着,打开一个 psql 提示符,界面应类似于:
然后切换到您最初为导入电子表格而创建的数据库。在 PostgreSQL 中可使用以下命令切换数据库:
\c database_name
技术支持
如果切换成功,psql 提示符会变为您指定的数据库名称。现在可以执行以下命令,将 .csv 文件导入 Students_Records 表:
COPY Student_Records(ID,Name,Age,Percentage_Marks) FROM 'D:\Students.csv' DELIMITER ',' CSV HEADER;
技术支持
随后执行一条 select 查询,验证导入是否正确完成。
您可以从这里进一步了解 Copy 命令,并尝试其不同选项。
总结
本教程到此结束。现在,您可以将电子表格导入 PostgreSQL,并像处理标准 SQL 表那样对其进行分析。
电子表格可能是任何组织中最关键的要素之一(无论其类型)。很多情况下,您需要将一份非常重要的电子表格导入数据库服务器,以便能够高效查询。本教程将带您在 PostgreSQL 中完成这一操作。
本教程假设您已熟悉 SQL,并了解如何在 PostgreSQL 中编写简单的 SQL 查询。如果您是 SQL 新手,以下资源可能会有所帮助:
本教程分为以下两个主要部分:
将电子表格转换为 .csv 文件
首先,您需要准备一份电子表格。您可以在任意 Excel 编辑器(如 Google 表格、Microsoft Excel 等)中创建。若要学习电子表格基础,您可以参加 DataCamp 的电子表格基础课程,或阅读这篇初学者电子表格教程。为便于跟随本教程,您可以使用这份电子表格,其中包含以下列:
该电子表格共包含 20 条记录。
让我们快速看一下其快照(前 10 行):
该电子表格包含部分大学生的信息。
我们可以从快照中推断各列可能的数据类型:
Percentage Marks列可以为浮点数类型。Name列为字符数据类型。将这份电子表格(也可称为数据集)导入 PostgreSQL 数据库的最简便方法,是先将其转换为 .csv 文件,再导入 PostgreSQL。CSV 代表逗号分隔值,具有两个主要优势:
每种 Excel 编辑器都支持将电子表格转换为 .csv 文件。在 Google 表格中,您可以通过以下路径操作:文件 -> 下载 -> 逗号分隔值。
将 .csv 文件导入 PostgreSQL 数据库
现在,要把刚刚创建的 .csv 文件导入 PostgreSQL,您首先需要一个 PostgreSQL 数据库。我们使用
pgAdmin界面快速创建一个。您可以按自己的喜好创建任意名称的数据库。完成后,需要在该数据库中创建一张表,用于存放将要导入的 .csv 文件中的记录。我们在您刚创建的数据库中建立一张名为
Student_Records的表。您沿用了上文讨论过的各列数据类型。为方便起见,也保持了相同的列名。现在在
pgAdmin中导航到刚创建的表,右键该表并从选项中选择Import。供您参考:https://www.loom.com/share/2eeb1a2c94bf4f928c3ffa5b1b72eef4。您可以忽略在导入过程中于演示视频中出现的错误。可以通过运行
select查询来验证记录是否已正确导入。现在我们来看如何在
psql提示符中完成上述操作。为此,先使用truncate table Student_Records;语句清空Student_Records表。接着,打开一个
psql提示符,界面应类似于:然后切换到您最初为导入电子表格而创建的数据库。在 PostgreSQL 中可使用以下命令切换数据库:
如果切换成功,
psql提示符会变为您指定的数据库名称。现在可以执行以下命令,将 .csv 文件导入Students_Records表:随后执行一条
select查询,验证导入是否正确完成。您可以从这里进一步了解
Copy命令,并尝试其不同选项。总结
本教程到此结束。现在,您可以将电子表格导入 PostgreSQL,并像处理标准 SQL 表那样对其进行分析。