问题标签 [postgres-9.6]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
76 浏览

postgresql - 获取 postgres 表中数据的最大变化

我们正在收集大量传感器数据并将它们记录到 postgres 数据库中。

基本模式 - 减少:

我试图在最后一天获得传感器数据的最大变化。我的意思是,在所有传感器中,传感器 ID 4、5、6、7 与前一天相比变化最大。在此之前,我试图获取一个 SQL 查询来计算上次阅读和最近阅读之间的差异。

我想也许领先和滞后功能会有所帮助,但我的查询并没有完全给出我想要的结果:

简单的数据集 - 因为我现在无法登录数据库,所以现在就做这个:

忘记加入(这是为了用户友好的传感器标签名称,现场工作人员需要和位置),我如何确定哪个传感器在按传感器 ID 分组时报告了时间序列中最大的温度变化?

我会期待:

(然后从中,我可以减去并排序锻炼已更改的前 10 个传感器)

我注意到 Postgres 9.6 也有一些其他功能,但想先尝试让 Lead/Lag 工作。

0 投票
1 回答
8064 浏览

postgresql - Postgres:psql:致命:数据库“uniprojectv20”不存在

我是 postgresql 的新手,我已经在我的计算机上安装了 postgres 并创建了名为的数据库uniprojectv20,还创建了名为的用户uniserved_db并授予了对数据库的所有访问权限uniprojectv20。我正在获取以下问题:

此外,如果我尝试从另一个用户而不是 postgres 连接,我将面临同样的问题。

0 投票
1 回答
400 浏览

sql - 比 PostgreSQL 中相同表但不同条件的多个子查询更好的方法

例如,我可能有这样的架构: 图式

我试图得到一些东西,就像:

我已经想出了类似 的子查询all_paid_merchandise_quantityall_shipped_merchandise_quantity. 但我想知道是否有更好的方法来做到这一点?

编辑:“丑陋”的查询。

0 投票
1 回答
164 浏览

php - ON CONFLICT 使用 pg_prepare() 错误“名称”不存在

我有一个使用这种方法的简单数据库类

使用它,我可以在没有准备好的语句的情况下进行以下查询,并且效果很好。

但是,当我进行准备时,我收到错误“错误:准备好的语句“41982c47c3c84749552cd9808ad03422”不存在”

由此41982c47c3c84749552cd9808ad03422产生md5一个唯一的名称。问题似乎来自ON CONFLICT. 我该如何解决这个问题?

0 投票
1 回答
35 浏览

linux - Postgres 更新 - 运行命令时出现版本不匹配错误

我最近将 Postgres 从 9.3 版更新到 9.6 版。更新后我的所有命令(例如 pg_dumpall)都指向 9.3 版本。我收到版本不匹配的错误。

我发现如果我将 /usr/bin 中的符号链接更改为指向 9.6,它似乎可以工作。有没有更好的方法将我的命令指向 9.6 版?谢谢你的帮助!

0 投票
1 回答
1166 浏览

linux - Postgres - Moving Data Folder

I wanted to move my PostgreSQL data folder on my Ubuntu server and I was following this tutorial to move it.

I was able to move it, and update my conf file to point to the new location.

When I go to run Postgres, it starts, but when I try to connect via

It gives me this error:

Any ideas what happened? It says it's running.

0 投票
1 回答
989 浏览

query-optimization - Postgres 优化大表查询

我正在尝试从一个大表中选择行(~10M 行)
该表包含一个timestamp我设置索引 的列

我想按顺序(按时间戳排序)按 N 行的块取行,这就是我使用limitoffset

我从不同的进程运行并行查询

查询需要很长时间,并且我的服务器的磁盘使用量激增(比正常磁盘使用量多 150G)

查询完成后,磁盘使用率恢复正常

这是我的查询的解释(这个没有order by

以下是真实查询的样子:

关于如何优化此过程的任何想法?非常感谢

0 投票
3 回答
653 浏览

postgresql - 简单的 WHERE EXISTS ... ORDER BY ... PostrgeSQL 中的查询非常慢

我有这个非常简单的查询,由我的 ORM(实体框架核心)生成:

  1. 有 2 个“is_active”记录。其他涉及的列(“id”)是主键。查询正好返回 4 行。
  2. 表 1 是 9600 万条记录。
  3. 表 2 是 3000 万条记录。
  4. 此查询中涉及的 3 列已编入索引(is_active、id、table2_id)。
  5. 生成这个简单查询的 C#/LINQ 代码是:Table2.Where(t => t.IsActive).Include(t => t.Table1).ToList();`
  6. SET STATISTICS 10000设置为所有 3 列。
  7. VACUUM FULL ANALYZE在两张桌子上运行。

如果没有该ORDER BY子句,查询会在几毫秒内返回,我不希望返回 4 条记录。解释输出:

WITHORDER BY子句,查询需要5分钟完成!解释输出:

内部的第一个索引扫描应返回不超过 2 行。然后外部的第二个索引扫描没有任何意义,因为它的成本为 4563070 和 103961040 行。它只需要匹配 2 行table2和 4 行table1

这是一个非常简单的查询,返回的记录很少。为什么 Postgres 无法正确执行它?

0 投票
2 回答
3931 浏览

postgresql - 错误“索引表达式中的函数必须标记为 IMMUTABLE”,而不是时间戳

我正在尝试创建以下索引;

我得到了错误;

错误:索引表达式中的函数必须标记为 IMMUTABLE`

我认为这是类型的混合,就像pao_start_numbertypebigintpao_start_suffixis一样varchar。我试图解决为;

但同样的错误。

我确定错误的原因是否正确,我该如何解决?我正在使用 Postgres 9.6

0 投票
2 回答
351 浏览

postgresql - 在 postgres 中,获取实体化视图所依赖的关系的名称和模式

我正在寻找打印架构中所有物化视图所依赖的关系的架构和名称:

这给出了类似的东西:

返回的描述给出了一些提示,但它不包含关系的模式。如何获得实际的依赖模式和名称?[注意我使用的是 postgres 9.6]