我在Postgresql中有两个表。
table_1
包含来源
Sources
A_src
B_src
C_src
table_2
如下
Result;Result_sources
2.3; {A_src;C_src}
43; {B_src;C_src}
11; {A_src;B_src;C_src}
如何在table_2.Result_sources
上编写约束,使其数组条目仅来自table_1.Sources
列
答案 0 :(得分:1)
您无法做到这一点,并且触发器无法替代,因为除非您使用SERIALIZABLE
交易,否则无法避免竞争条件。
这个问题需要规范化:创建一个表格,实现table_1
和table_2
之间的m-to-n关系。