PostgreSQL

PostgreSQL实现交叉表(行列转换)的5种方法示例

交叉表 交叉表(Cross Tabulations)是一种常用的分类汇总表格。使用交叉表查询,显示源于表中某个字段的汇总值,并将它们分组,其中一组列在数据表的左侧,另一组列在数据表的上部。行和列的交叉处可以对数据进行多种汇总计算,如:求和、平均值、记数、最...

PostgreSQL中使用dblink实现跨库查询的方法

最近一个sql语句涉及到跨库的表之间的联合查询,故研究学习下。 一开始研究知道了sql语句的写法,但是执行通过不了,需要先安装dblink扩展。这些博文里都没说清楚,感谢网友指点,在windows下只需要在相应的数据库下执行sql语句“create ext...

浅谈PostgreSQL 11 新特性之默认分区

文章目录 PosgtreSQL 11 支持为分区表创建一个默认(DEFAULT)的分区,用于存储无法匹配其他任何分区的数据。显然,只有 RANGE 分区表和 LIST 分区表需要默认分区。 CREATE TABLE measurement ( city_i...

PostgreSQL 角色与用户管理介绍

一、角色与用户的区别 角色就相当于岗位:角色可以是经理,助理。用户就是具体的人:比如陈XX经理,朱XX助理,王XX助理。在PostgreSQL 里没有区分用户和角色的概念,”CREATE USER” 为 “CREATE ...

PostgreSQL索引失效会发生什么

前段时间碰到个奇怪的索引失效的问题,实际情况类似下面这样: bill=# begin; BEGIN bill=*# create index idx_t1 on t1(id); CREATE INDEX bill=*# explain select * f...

PostgreSQL树形结构的递归查询示例

背景 处理不确定深度的层级结构,比如组织机构,一个常用的设计是在一张表里面保存 ID 和 Parent_ID ,并且通过自联结的办法构造一颗树。这种方式对写数据的过程很友好,但是查询过程就变得相对复杂。在不引入MPTT模型的前提下,必须通过递归算法来查询某...