0
假設非常簡單的模式PostgreSQL的顯示2子列表中一個結果
表主
main_id, ...
1 , ...
2 , ...
表SUB1
main_id, sub1_data
1 , a
1 , b
2 , g
表SUB2
main_id, sub2_data
1 , 1
2 , 1
2 , 2
作爲輸出I將像
main_id, sub1_data, sub2_data
1 , a , 1
1 , b , <null>
2 , g , 1
2 , <null> , 2
使用UNION我可以得到接近,但隨後每個列表獲取的它自己的行
SELECT main_id, sub1_data, NULL
FROM sub1
UNION
SELECT main_id, NULL, sub2_data
FROM sub2
結果
main_id, sub1_data, sub2_data
1 , a , <null>
1 , b , <null>
1 , <null> , 1
2 , g , <null>
2 , <null> , 1
2 , <null> , 2
那麼,有沒有辦法讓他們兩個行和公正使用盡可能多的行作爲最長的列表?
g'應與記錄在您的預期輸出相關的值'介紹。你能詳細說明你的輸出背後的邏輯嗎? –
沒有真正的邏輯,只有第三方的要求把它放在一個單一的CSV。 – Eelke
我認爲@TimBiegeleisen不是要求合理性,而是關於我們應該遵循的算法來獲得樣本 –