摘要:在第一篇文章中,我们已经提到访问方法必须提供有关自身的信息。让我们看一下访问方法接口的结构。 属性 访问方法的所有属性都存储在«pg_am»表中(“am”代表访问方法)。我们还可以从同一个表中获取可用方法的列表: postgres=# select * from pg_am; amname | am 阅读全文
PostgreSQL的Lateral Joins
2020-07-20 22:09 by abce, 2745 阅读, 1 推荐, 收藏,
摘要:lateral join就是在sql中进行一个foreach循环。有两种不同的方式写lateral join。 如下,是一种简单的形式: SELECT <columns> FROM <table reference>, LATERAL <inner subquery>; 这里的表引用可以是表、也可以 阅读全文
PostgreSQL 高级SQL(五) 内建窗口函数
2020-07-13 15:29 by abce, 1256 阅读, 0 推荐, 收藏,
摘要:本文是转载,原文地址是:https://www.jianshu.com/p/50292ad0d7eb 前面俩个章节我们介绍了窗口函数、滑动窗口函数的概念,接下来我们介绍一下PG支持的原生通用窗口函数,总共11个(11版本的官网文档地址) 1、row_number 函数row_number函数可以给每 阅读全文
PostgreSQL 高级SQL(四) 滑动窗口函数
2020-07-12 16:27 by abce, 3779 阅读, 0 推荐, 收藏,
摘要:本文是转载,原文地址是:https://www.jianshu.com/p/184419ee68c5 上章节我们讲述的窗口函数都属于静态窗口,然而我们很多场景是需要滑动窗口,比如我们需要查看这样的一张报表,这张报表包含国家名字,年份,GDP,当前年份与上一年、下一年的GDP均值,也就是说GDP均值这 阅读全文
PostgreSQL 高级SQL(三) 窗口函数
2020-07-12 15:49 by abce, 1216 阅读, 0 推荐, 收藏,
摘要:本文是转载,原文地址是:https://www.jianshu.com/p/7d0f0e9c821a 这一章节我们将了解postgresql 中聚合函数后面的over()子句,可能大家在工作的时候或多或少也涉及过over()子句的使用。 我们如果要实现一张这样的报表,这张报表有四列,国家名字,年份, 阅读全文
PostgreSQL 高级SQL(二) filter子句
2020-07-12 15:24 by abce, 6588 阅读, 1 推荐, 收藏,
摘要:本文是转载,原文地址是:https://www.jianshu.com/p/aad5b7265674 本章所用到案例数据来自于上一章节,如果有想使用该数据的读者可以查看上一章节。 这一章节我们想要了解的是PG聚合操作中使用到的filter子句,这个filter子句是ANSI SQL标准中的关键字,并 阅读全文
PostgreSQL 高级SQL(一)分组集
2020-07-12 13:27 by abce, 2387 阅读, 0 推荐, 收藏,
摘要:本文是转载,原文地址是:https://www.jianshu.com/p/fa620e2d9f1b 作为一名开发者,平时工作中用到最多的可能就是SQL了,简单的SQL我们平时基本都用的差不多了,今天我们介绍一下PG的一些高级SQL,主要是PG SQL的分组集,这些SQL主要用于一些报表任务的开发。 阅读全文
postgresql中的rollup
2020-07-10 15:11 by abce, 2196 阅读, 0 推荐, 收藏,
摘要:在postgresql中,rollup是group by的子句,提供了多个分组集的简便方式。分组集(grouping set)是用户用于分组的一组列的集合。 与cube语句不同,rollup不会在指定的列上产生所有可能的分组集。 rollup假设输入的列上有层次结构,根据层次结构生成分组集。这就是为 阅读全文
pg中Building Indexes Concurrently
2020-06-29 13:24 by abce, 1030 阅读, 0 推荐, 收藏,
摘要:create index的语法中,看到一个关键字concurrently。以下是对concurrently的解释: 当使用这个选项时,PostgreSQL在构建索引时不加任何阻止对表的并发插入、更新或删除的锁;而标准的索引构建会锁定表上的写操作(而不是读操作),直到完成。 在使用此选项时,有几个注意 阅读全文
PostgreSQL逻辑订阅中的复制状态查看
2020-06-28 23:14 by abce, 3774 阅读, 0 推荐, 收藏,
摘要:1.订阅端 pg_subscription_rel 查看订阅的每个表的复制状态。是多对多的映射。其中: srrelid:表示表的pg_class.oid srsubstate:状态码;i=初始化,d=正在复制数据,s=已同步,r =准备好(常规复制) srsublsn: s和r状态时的结束LSN。 阅读全文
浙公网安备 33010602011771号