我在PostgreSQL中有2个表 表1列:user_id,date,p。其中p是具有10个元素的数组。在该表中,p列中的信息是"编码"按数字。我们可以使用表2加密它:它有2列:id(这是Table1.p [i]中的数字)和值(这是实数值)
要加密Table1.p中的值,请用户left_join 10次。 例如
Select * from Table1 left join Table2
on Table1.p[1]=Table2.id
left join Table2
on Table1.p[2]=Table2.id
left join Table2
on Table1.p[3]=Table2.id
....
left join Table2
on Table1.p[10]=Table2.id;
我可以以某种方式加入完整数组,而不打印左连接1次吗?
答案 0 :(得分:0)
我并不完全清楚你要做什么,但我认为你正在寻找这个:
Select *
from Table1
left join Table2 on table2.id = any(Table1.p);