2010-11-10 44 views
1

我需要爲網絡圖編寫一個選擇查詢。有兩張桌子;從一個表中選擇查詢並替換另一個表中的所有值

select * from node; 
num | node 
-----+------ 
    1 | a 
    2 | b 
    3 | c 
    4 | d 

select * from edge; 
e1 | e2 
----+---- 
a | b 
c | d 
a | c 

我需要一個select語句,它會給我像這樣的數字形式的邊緣值;

1-2 
3-4 
1-3 

我正在使用postgresql 8.4,但應該與我的問題沒有任何關聯。

謝謝。

回答

2

一對夫婦的JOIN的應該做的伎倆:如果你想在輸出字符串完全按照你的問題,然後用這個代替

SELECT 
    n1.num AS num1, 
    n2.num AS num2 
FROM node n1 
JOIN edge e ON n1.node = e.e1 
JOIN node n2 ON n2.node = e.e2 

SELECT n1.num || '-' || n2.num AS nums 
FROM ... 
+0

+1小問題||並不總是連接操作符。 – 2010-11-10 16:48:08

相關問題