我有2個數據庫表,節點和邊緣。節點表的ID是主鍵,邊緣表有2列,id1和id2,這些是nodes.id的外鍵。這應該代表(一個邊緣包含兩個節點)PostgreSQL連接查詢
節點之間的連接。如果邊緣表包含例如
id1 id2
1 3
1 5
2 5
我需要一個查詢的是,當I型1,PG應該在單細胞3,5-返回。類似這樣的:
connections
3,5
那個查詢應該是什麼樣的?
我有2個數據庫表,節點和邊緣。節點表的ID是主鍵,邊緣表有2列,id1和id2,這些是nodes.id的外鍵。這應該代表(一個邊緣包含兩個節點)PostgreSQL連接查詢
節點之間的連接。如果邊緣表包含例如
id1 id2
1 3
1 5
2 5
我需要一個查詢的是,當I型1,PG應該在單細胞3,5-返回。類似這樣的:
connections
3,5
那個查詢應該是什麼樣的?
合併多行需要aggregation function(如果需要多個最終結果,則需要GROUP BY
子句)。
對於這種情況,string_agg
是一個使用。
例如
Select string_agg(id2, ', ') as connections from table where id1=1 group by id1
如果數據還有一行值爲1,6,那麼結果是什麼? –