PostgreSQL聚集函数详解

和大多数其它关系数据库产品一样,PostgreSQL支持聚集函数。一个聚集函数从多个输入行中计算出一个结果。比如,我们有在一个行集合上计算 count(数目), sum(总和), avg(均值), max(最大值), min(最小值)的函数...

PostgreSQL更新和删除详解

你可以用 UPDATE 命令更新现有的行。假设你发现所有 11 月 28 日的温度计数都低了两度,那么你就可以用下面的方式更新数据: UPDATE weather SET temp_hi = temp_hi - 2, temp...

PostgreSQL视图详解

假设你的应用对天气记录和城市位置的组合列表特别感兴趣,而你又不想每次键入这些查询。那么你可以在这个查询上创建一个视图,它给这个查询一个名字,你可以像普通表那样引用它。 CREATE VIEW myview AS SELECT c...

PostgreSQL外键详解

考虑下面的问题:你想确保没有人可以在 weather 表里插入一条在 cities 表里没有匹配记录的数据行。这就叫维护表的参照完整性。在简单的数据库系统里,实现(如果也叫实现)这个特性的方法通常是先看看 cities 表里是否有匹配的记录...

PostgreSQL事务详解

事务是所有数据库系统的一个基本概念。一次事务的要点就是把多个步骤捆绑成一个单一的、不成功则成仁的操作。其它并发的事务是看不到在这些步骤之间的中间状态的,并且如果发生了一些问题,导致该事务无法完成,那么所有这些步骤都完全不会影响数据库。 比...

PostgreSQL继承详解

继承是面向对象的数据库的概念。它开启了数据库设计新的有趣的可能性大门。 让我们创建两个表:一个 cities 表和一个 capitals 表。自然,首府(capital)也是城市(cities),因此在列出所有城市时你想要某种方法隐含地显...

PostgreSQL语法结构详解

SQL 输入由一系列命令组成。一条命令由一系列记号构成,用一个分号(";")结尾。输入流的终止也结束一条命令。哪些记号是合法的取决于特定命令的语法。 记号可以是一个关键字、标识符、引号包围的标识符、文本(或常量)、特殊的字符符号。记号通常...

PostgreSQL值表达式详解

4.2. 值表达式 值表达式用在各种语法环境中,比如在 SELECT 命令的目标列表中,在 INSERT 或 UPDATE 中用作新的列值,或者在许多命令的搜索条件中使用。我们有时候把值表达式的结果叫做标量 ,以便与...

PostgreSQL调用函数详解

允许函数有命名参数,可以被位置 或名称表示法调用。名称表示法对有大量参数的函数特别有用,因为它更加明确和可靠的标记了形参和实参之间的联系。在位置表示法里,一个函数调用的参数值要用与函数声明相同的顺序来写出。在名称表示法里,参数是通过名称来与...

PostgreSQL表的基本概念详解

关系型数据库中的表非常类似纸面上的一张表:它由行和列组成。字段的数目和顺序是固定的,每个字段都有一个名字。行的数目是变化的(它反映了给定时刻存储的数据量)。 SQL 对表中行的顺序没有任何承诺。当读取一个表时,行将会以一个未指定的顺序出现,...