【发布时间】:2022-10-13 00:31:48
【问题描述】:
欣赏这是一个简单的用例,但在 Postgres 中使用数组进行连接有困难。
我有两张桌子:
table: shares
id | likes_id_array timestamp share_site
-----------------+-----------------+----------+-----------
12345_6789 | [xxx, yyy , zzz]| date1 | fb
abcde_wxyz | [vbd, fka, fhx] | date2 | tw
table: likes
likes_id | name | location
--------+-------+----------+-----
xxx | aaaa | nice
fpg | bbbb | dfpb
yyy | mmmm | place
dhf | cccc | fiwk
zzz | dddd | here
desired - a result set based on shares.id = 12345_6789:
likes_id | name | location | timestamp
--------+-------+----------+------------+-----------
xxx | aaaa | nice | date1
yyy | mmmm | place | date1
zzz | dddd | here | date1
第一步是对 likes_id_array 使用 unnest():
SELECT unnest(likes_id_array) as i FROM shares
WHERE id = '12345_6789'
但我不知道如何使用 likes_id 上的 likes 表加入由此产生的结果集。任何帮助将非常感激!
【问题讨论】:
标签: postgresql