630得票12回答
在Postgres中生成用于INSERT语句的UUID?

我的问题很简单。我知道UUID的概念,并希望生成一个UUID来指代我的数据库中店铺中的每个“项目”。听起来很合理吧?问题是以下这行代码会返回错误:honeydb=# insert into items values( uuid_generate_v4(), 54.321, 31, 'desc ...

247得票5回答
如何添加“on delete cascade”约束?

在 PostgreSQL 8 中,是否可以将 ON DELETE CASCADES 添加到以下表中的两个外键,而无需删除后者?# \d scores Table "public.scores" Column | Type | Modifie...

170得票9回答
如何在PostgreSQL中使用array_agg排除空值,就像在string_agg中一样?

如果我使用array_agg来收集名称,那么我得到的名字将用逗号分隔,但是如果存在null值,那么该null也会被视为聚合中的一个名称。例如:SELECT g.id, array_agg(CASE WHEN g.canonical = 'Y' THEN g.users ELSE ...

132得票9回答
使用psql连接到启用了SSL模式的PostgreSQL

我正在尝试为PostgreSQL服务器配置ssl证书。我在数据目录中创建了一个证书文件(server.crt)和密钥(server.key),并更新SSL参数为"on"以启用安全连接。我只想要服务器在客户端上通过服务器证书进行身份验证,而不需要在服务器端验证客户端的真实性。我使用psql作为客...

107得票3回答
获取当前(在运行查询的时刻)序列值的选项

如何在PostgreSQL 8.4中获取当前序列值? 注意:我需要这个值用于某种统计,只需检索并存储。手动递增的并发和竞争条件与问题无关。 注意2:该序列在多个表之间共享。 注意3:currval不起作用,因为: 返回当前会话中此序列最近获得的nextval的值 ERROR: 在此会...

93得票7回答
如何使用psycopg2在PostgreSQL中获取表格?

请问如何获取当前数据库中的表格? 我正在使用postgresql-8.4和psycopg2。

90得票3回答
将逗号分隔的列数据拆分为其他列

我有一个包含逗号分隔数据的列:Column ------- a,b,c,d 我想将逗号分隔的数据拆分成多列,以获得以下输出:Column1 Column2 Column3 Column4 ------- ------- ------- ------- a b ...

71得票3回答
如何在PostgreSQL数据库中获取正在运行的查询状态

我有一个运行时间非常长的查询语句。 如何获取该查询的状态,例如它将运行多长时间? 它是否正在访问表中的数据。 注意:根据pg_stat_activity,查询状态显示为活动而不是等待状态。像在Oracle中一样,我们可以看到查询的源/目标和处理状态 - 在postgresql中是否有类似的功能?

69得票1回答
在 PL/pgSQL 中迭代整数数组

我正在尝试在一个 plpgsql 函数中遍历一个整数数组(integer[]),类似这样: declare a integer[] = array[1,2,3]; i bigint; begin for i in a loop raise notice "%...

66得票6回答
仅选择今天(从午夜以来)的时间戳

我有一个带有PostgreSQL 8.4的服务器,每晚01:00会重新启动(不要问为什么),我需要获取连接用户的列表(即他们的时间戳为u.login > u.logout):SELECT u.login, u.id, u.first_name FROM pref_users u WHER...