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不是要求合理性,而是关于我们应该遵循的算法来获得样本 –