PostgreSQL合并行

真相

给定下面的表A和表B,有人可以指导我使用什么SQL / PLPGSQL产生所需的结果。非常感谢。

表A

+--------+-------+-------+
| USR_ID | COL1  | COL2  |
+--------+-------+-------+
|    1   |       |  101  |
+--------+-------+-------+
|    2   |       |  101  |
+--------+-------+-------+

表B

+--------+-------+-------+
| USR_ID | COL1  | COL2  |
+--------+-------+-------+
|    1   |  103  |       |
+--------+-------+-------+
|    3   |  102  |       |
+--------+-------+-------+

所需结果

+--------+-------+-------+
| USR_ID | COL1  | COL2  |
+--------+-------+-------+
|    1   |  103  |  101  |
+--------+-------+-------+
|    2   |       |  101  |
+--------+-------+-------+
|    3   |  102  |       |
+--------+-------+-------+
模糊树

用于coalesce赋予非空值优先级

select coalesce(a.usr_id,b.usr_id) usr_id,
coalesce(a.col1,b.col1) col1,
coalesce(a.col2,b.col2) col2
from tablea a full join tableb b
on a.usr_id = b.usr_id

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章