PostgreSQL 教程

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云原生数据库 PolarDB 分布式版,标准版 2核8GB
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介: 本 PostgreSQL 教程可帮助您快速了解 PostgreSQL。您将通过许多实际示例快速掌握 PostgreSQL,并将这些知识应用于使用 PostgreSQL 开发应用程序。

PostgreSQL 教程可帮助您快速了解 PostgreSQL。您将通过许多实际示例快速掌握 PostgreSQL,并将这些知识应用于使用 PostgreSQL 开发应用程序。

如果你是 …

  • 寻求快速学习 PostgreSQL。
  • 使用 PostgreSQL 作为后端数据库管理系统开发应用程序。
  • 从其他数据库管理系统(例如 MySQL、Oracle 和 Microsoft SQL Server)迁移到 PostgreSQL。

您将在此网站上找到快速有效地开始使用 PostgreSQL 所需的所有信息。

PostgreSQL 教程演示了 PostgreSQL 的许多独特功能,这些功能使其成为最先进的开源数据库管理系统。

PostgreSQL 入门

本部分向您展示如何在 Windows、Linux 和 macOS 上安装 PostgreSQL,帮助您开始使用 PostgreSQL。您还将学习如何使用 psql 工具连接到 PostgreSQL,以及如何将示例数据库加载到 PostgreSQL 中进行练习。

PostgreSQL 基础教程

首先,您将学习如何使用基本数据查询技术从单个表中查询数据,包括查询数据、对结果集进行排序和过滤行。然后,您将了解高级查询,例如连接多个表、使用集合操作以及构造子查询。最后,您将学习如何管理数据库表,例如创建新表或修改现有表的结构。

第 1 节. 查询数据

  • 简单查询 – 向您展示如何从单个表中查询数据。
  • 列别名 – 了解如何为查询中的列或表达式分配临时名称。
  • 排序 – 指导您如何对查询返回的结果集进行排序。
  • 去重查询 – 为您提供一个删除结果集中重复行的子句。

第 2 节. 过滤数据

  • WHERE – 根据指定条件过滤行。
  • LIMIT – 获取查询生成的行的子集。
  • FETCH – 限制查询返回的行数。
  • IN – 选择与值列表中的任何值匹配的数据。
  • BETWEEN – 选择值范围内的数据。
  • LIKE – 基于模式匹配过滤数据。
  • IS NULL – 检查值是否为空。

第 3 节. 连接多个表

  • 连接 – 向您展示 PostgreSQL 中连接的简要概述。
  • 表别名 – 描述如何在查询中使用表别名。
  • 内连接 – 从一个表中选择在其他表中具有相应行的行。
  • 左连接 – 从一个表中选择行,这些行在其他表中可能有也可能没有对应的行。
  • 自连接 – 通过将表与自身进行比较来将表与其自身连接。
  • 完全外连接 – 使用完全连接查找一个表中在另一个表中没有匹配行的行。
  • 交叉连接 – 生成两个或多个表中的行的笛卡尔积。
  • 自然连接 – 根据连接表中的公共列名称,使用隐式连接条件连接两个或多个表。

第 4 节. 数据分组

  • GROUP BY – 将行分成组并对每个组应用聚合函数。
  • HAVING – 对组应用条件。

第 5 节. 集合运算

  • UNION – 将多个查询的结果集合并为一个结果集。
  • INTERSECT – 组合两个或多个查询的结果集并返回一个结果集,该结果集的行都出现在两个结果集中。
  • EXCEPT – 返回第一个查询中未出现在第二个查询的输出中的行。

第 6 节. 分组集、多维分组和汇总

  • 分组集 – 在报告中生成多个分组集。
  • CUBE – 定义多个分组集,其中包括所有可能的维度组合。
  • ROLLUP – 生成包含总计和小计的报告。

第 7 节. 子查询

  • 子查询 – 编写一个嵌套在另一个查询中的查询。
  • ANY – 通过将某个值与子查询返回的一组值进行比较来检索数据。
  • ALL – 通过将值与子查询返回的值列表进行比较来查询数据。
  • EXISTS – 检查子查询返回的行是否存在。

第 8 节. 公共表表达式

第 9 节. 修改数据

在本节中,您将学习如何使用INSERT语句向表中插入数据、使用UPDATE语句修改现有数据以及使用DELETE语句删除数据。此外,您还将学习如何使用 UPSERT 语句来合并数据。

  • 插入 – 指导您如何将单行插入表中。
  • 插入多行 – 向您展示如何在表中插入多行。
  • 更新 – 更新表中的现有数据。
  • 连接更新 – 根据另一个表中的值更新表中的值。
  • 删除 – 删除表中的数据。
  • 连接删除 – 根据另一个表中的值删除表中的行。
  • UPSERT – 如果新行已存在于表中,则插入或更新数据。

第 10 节. 事务

  • PostgreSQL 事务 – 向您展示如何使用 BEGIN、COMMIT 和 ROLLBACK 语句处理 PostgreSQL 中的事务。

第 11 节. 导入和导出数据

您将学习如何使用COPY命令,以 CSV 文件格式对 PostgreSQL 数据进行导入和导出。

第 12 节. 管理表

在本节中,您将开始探索 PostgreSQL 数据类型,并向您展示如何创建新表和修改现有表的结构。

  • 数据类型 – 涵盖最常用的 PostgreSQL 数据类型。
  • 创建表 – 指导您如何在数据库中创建新表。
  • SELECT INTOCREATE TABLE AS – 向您展示如何从查询的结果集创建新表。
  • 使用 SERIAL 自增列 – 使用 SERIAL 将自动增量列添加到表中。
  • 序列 – 向您介绍序列并描述如何使用序列生成数字序列。
  • 标识列 – 向您展示如何使用标识列。
  • 更改表 – 修改现有表的结构。
  • 重命名表 – 将表的名称更改为新名称。
  • 添加列 – 向您展示如何向现有表添加一列或多列。
  • 删除列 – 演示如何删除表的列。
  • 更改列数据类型 – 向您展示如何更改列的数据。
  • 重命名列 – 说明如何重命名表中的一列或多列。
  • 删除表 – 删除现有表及其所有依赖对象。
  • 截断表 – 快速有效地删除大表中的所有数据。
  • 临时表 – 向您展示如何使用临时表。
  • 复制表 – 向您展示如何将表格复制到新表格。

第 13 节. 了解 PostgreSQL 约束

  • 主键 – 说明在创建表或向现有表添加主键时如何定义主键。
  • 外键 – 展示如何在创建新表时定义外键约束或为现有表添加外键约束。
  • 检查约束 – 添加逻辑以基于布尔表达式检查值。
  • 唯一约束 – 确保一列或一组列中的值在整个表中是唯一的。
  • 非空约束 – 确保列中的值不是NULL

第 14 节. 深入了解 PostgreSQL 数据类型

  • 布尔型 – 使用布尔数据类型存储TRUEFALSE值。
  • 字符型 – 了解如何使用各种字符类型,包括CHARVARCHARTEXT
  • NUMERIC – 向您展示如何使用NUMERIC类型来存储需要精度的值。
  • 整型 – 向您介绍 PostgreSQL 中的各种整数类型,包括SMALLINTINTBIGINT
  • DATE – 引入DATE用于存储日期值的数据类型。
  • 时间戳 – 快速了解时间戳数据类型。
  • 间隔 – 向您展示如何使用间隔数据类型有效地处理一段时间。
  • TIME – 使用TIME数据类型来管理一天中的时间值。
  • UUID – 指导您如何使用UUID数据类型以及如何使用提供的模块生成UUID值。
  • 数组 – 向您展示如何使用数组,并向您介绍一些用于数组操作的方便函数。
  • hstore – 向您介绍数据类型,它是存储在 PostgreSQL 中单个值中的一组键/值对。
  • JSON – 说明如何使用 JSON 数据类型,并向您展示如何使用一些最重要的 JSON 运算符和函数。
  • 用户定义的数据类型 – 向您展示如何使用CREATE DOMAINCREATE TYPE语句创建用户定义的数据类型。

第 15 节. 条件表达式和运算符

  • CASE – 向您展示如何使用CASE表达式构成条件查询。
  • COALESCE – 返回第一个非空参数。您可以使用它将NULL替换为一个默认值。
  • NULLIF – 如果第一个参数等于第二个参数则返回NULL
  • CAST – 从一种数据类型转换为另一种数据类型,例如,从字符串转换为整数,从字符串转换为日期。

第 16 节. PostgreSQL 实用程序

  • psql 命令 – 向您展示最常见的 psql 命令,帮助您更快、更有效地与 psql 交互。

第 17 节. PostgreSQL 技巧

PostgreSQL 高级教程

这个 PostgreSQL 高级教程涵盖了高级概念,包括存储过程、索引、视图、触发器和数据库管理。

PostgreSQL PL/pgSQL

此 PostgreSQL 存储过程部分将逐步向您展示如何使用 PL/pgSQL 过程语言开发 PostgreSQL 用户定义函数。

PostgreSQL 触发器

本节向您介绍 PostgreSQL 触发器概念,并展示如何在 PostgreSQL 中管理触发器。

PostgreSQL 视图

我们将向您介绍数据库视图概念,并向您展示如何管理视图,例如在数据库中创建、更改和删除视图。

PostgreSQL 索引

PostgreSQL 索引是增强数据库性能的有效工具。索引可以帮助数据库服务器比没有索引时更快地找到特定行。

PostgreSQL 管理

PostgreSQL 管理涵盖 PostgreSQL 数据库服务器最重要的活动,包括角色和数据库管理、备份和恢复。

PostgreSQL 函数

PostgreSQL 为内置数据类型提供了大量的函数。本节向您展示如何使用一些最常用的 PostgreSQL 函数。

应用程序编程接口

本节向您展示,如何从使用流行编程语言(例如 Java、Python 和 PHP)的应用程序,与 PostgreSQL 数据库进行交互。

  • PostgreSQL Java 教程 – 此 PostgreSQL JDBC 部分向您展示,如何使用 Java JDBC 驱动程序与 PostgreSQL 数据库进行交互。
  • PostgreSQL Python 教程 – 此 PostgreSQL Python 部分向您展示,如何使用 Python 编程语言与 PostgreSQL 数据库进行交互。
相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
7月前
|
关系型数据库 Java 数据库连接
PostgreSQL从小白到高手教程 - 第47讲:JMETER工具使用
PostgreSQL从小白到高手教程 - 第47讲:JMETER工具使用
217 3
|
Ubuntu 关系型数据库 数据库
百度搜索:蓝易云【Ubuntu系统安装 PostgreSQL详细教程。】
现在,你已经成功在Ubuntu系统上安装了PostgreSQL,并创建了一个新的数据库和用户。你可以使用所创建的用户凭据连接到数据库并开始使用。记得根据你的具体需求进行进一步的配置和安全性调整。
292 2
|
关系型数据库 数据库 数据安全/隐私保护
PostgreSQL安装和使用教程
PostgreSQL安装和使用教程
456 0
|
4月前
|
关系型数据库 Linux 网络安全
很详细的PostgreSQL安装部署教程
很详细的PostgreSQL安装部署教程
271 0
|
7月前
|
关系型数据库 数据库 PostgreSQL
|
7月前
|
负载均衡 监控 关系型数据库
PostgreSQL从小白到高手教程 - 第48讲:PG高可用实现keepalived
PostgreSQL技术大讲堂 - 第48讲:PG高可用实现keepalived
261 1
|
7月前
|
SQL 关系型数据库 OLAP
PostgreSQL从小白到高手教程 - 第46讲:poc-tpch测试
PostgreSQL从小白到高手教程 - 第46讲:poc-tpch测试
167 3
|
7月前
|
关系型数据库 OLAP OLTP
PostgreSQL从小白到高手教程 - 第45讲:poc-tpcc测试
CUUG PostgreSQL技术大讲堂系列公开课第45讲-POC-TPCC测试的内容,往期视频及文档,请联系CUUG。
163 1
|
7月前
|
Oracle 关系型数据库 数据库
PostgreSQL从入门到精通教程 - 第42讲:pg_rman部署与使用
PostgreSQL从入门到精通教程 - 第42讲:pg_rman部署与使用
183 1
|
7月前
|
关系型数据库 数据库 PostgreSQL
PostgreSQL从小白到高手教程 - 第41讲:postgres表空间备份与恢复
PostgreSQL从小白到高手教程 - 第41讲:postgres表空间备份与恢复
214 1

相关产品

  • 云原生数据库 PolarDB