arrays - Postgres 10.5:如何将整数数组链接到单独表的主键?
问题描述
我有两个 Postgres 表,TABLE_A
并且TABLE_B
.
TABLE_A
包含 column table_b_fks
,其值是一个整数数组(例如"{1,2,4}"
),它们是 的主键集TABLE_B
。
TABLE_B
有两列,主键和text
.
我的目标是创建一个物化视图,除了整数数组被替换为's from的数组TABLE_A
之外,它是相同的。table_b_fks
text
TABLE_B
这可能吗?似乎postgres 不支持外键数组。有替代品吗?
解决方案
事实上,整数数组不能被正式地视为外键,尽管它可以很容易地用于连接表:
select table_b_fks, array_agg(name)
from table_a
join table_b on id = any(table_b_fks)
group by 1
请注意,该示例有点简化,您需要 table_a 中的唯一列来标识其行(可以在 group by 中使用)。
推荐阅读
- mongodb - 查询以获取按 mongodb 中的某个字段分组的数据
- sql - 在远程服务器表上插入和更新数据
- jmeter - Jmeter 正则表达式从响应数据中检索 2 个单词之间的数据
- typescript - 实例上下文类型是否可能?
- angular6 - 通过反应形式动态构建下拉/选择 Angular 6
- javascript - Node.js 在运行这个小 js 文件时,它给出了以下错误
- python - Python for google.datalab.storage - 检查文件复制是否成功
- android - 在 Android 9 中获取来电显示
- dynamics-crm - 当 Dynamics CRM Async 维护作业运行时,Alter Index 命令发生死锁
- c# - 将 ASP.net 角度应用程序部署到 IIS 的问题