如何将不同表的多列合并为一张表

纳瓦兹·谢里夫

我有三个表 a、b 和 c,需要将这些表数据排列为目标表,并且所有这些表(a、b、c)都不在数据库中,它们是使用查询作为别名从单个表中获取的,需要排列使用查询将这些表转换为目标表。怎么做

   table a     |      table b     |   table c     
               |                  |               
  id | a_vals  |     id | b_vals  |  id | c_vals  
  ------------ | --------------   | ------------- 
  1  |  123    |     1  |  123    |  1  |  123    
  2  |  124    |     2  |  142    |  2  |  142    
  3  |  234    |     4  |  234    |  5  |  234    

目标表

id | a_val| b_val| c_val
1  | 123  | 123  | 123
2  | 124  | 142  | 142
3  | 234  |  -   |  -
4  |  -   | 234  |  -
5  |  -   |      | 234
莱纳斯返回

由于 a、b 和 c 与您要加入的列共享相同的名称,因此您可以使用“USING”来避免结果表中出现重复键:

SELECT *
FROM a
FULL OUTER JOIN b USING (id)
  FULL OUTER JOIN c USING (id);

或者,由于 a、b 和 c 的值列都有不同的名称,您可以使用 NATURAL JOIN:

SELECT *
FROM a
NATURAL FULL OUTER JOIN b
NATURAL FULL OUTER JOIN c;

小心不要意外重命名任何其他列,因为自然连接会删除任何重复的列。如果愿意,您也可以省略“OUTER”关键字,但为了清楚起见,我会保留它(因为 LEFT、RIGHT 和 FULL 表示外部联接)。有关详细信息,请参阅https://www.postgresql.org/docs/10/static/queries-table-expressions.html

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将不同的工作表合并为一张工作表(仅指定的行)

来自分类Dev

SQL将一张表的多行合并为多列的一行

来自分类Dev

如何将同一张表中的多行合并为单行结果?

来自分类Dev

将不同表中的多列合并为一个

来自分类Dev

使用TSQL将表合并为一张表

来自分类Dev

如何将来自CNN预测的多幅图像合并为一张图像?

来自分类Dev

如何将多张图像合并为一张?

来自分类Dev

VBA:如何将不同工作表上的两个范围合并为一个,以循环浏览

来自分类Dev

VBA:如何将不同工作表上的两个范围合并为一个,以循环浏览

来自分类Dev

使用phpmyad将两张表合并为一张

来自分类Dev

将[日期,数据]格式的n张工作表合并为一张

来自分类Dev

如何将多级统计信息合并到一张表中?

来自分类Dev

同一张表中的多列结果

来自分类Dev

引用同一张表中的不同列

来自分类Dev

如何从同一张表的两列中获得一行中的不同结果?

来自分类Dev

将多个Google电子表格合并为一张工作表

来自分类Dev

将多个Google电子表格合并为一张工作表

来自分类Dev

如何将一张表上的 3 列与另一张表中的 1 列连接起来?

来自分类Dev

如何将两列连接到同一张表

来自分类Dev

如何通过使用不同的列值引用同一张表来获取数据

来自分类Dev

如何计算一张表中不同行和列之间的时间戳差异?

来自分类Dev

根据mysql中另一张表中的值更新一张表中的多列

来自分类Dev

在python中将不同工作表中的列合并为单个工作表

来自分类Dev

如何比较同一张表中的记录列?

来自分类Dev

如何将数据从一张excel表复制到另一张excel表?

来自分类Dev

如何将双多对多关系映射到《学说2》中的同一张表?

来自分类Dev

将一张以上的表合并到一张现有的表中

来自分类Dev

在BASH中将不同长度的多列合并为一列

来自分类Dev

在BASH中将不同长度的多列合并为一列

Related 相关文章

  1. 1

    将不同的工作表合并为一张工作表(仅指定的行)

  2. 2

    SQL将一张表的多行合并为多列的一行

  3. 3

    如何将同一张表中的多行合并为单行结果?

  4. 4

    将不同表中的多列合并为一个

  5. 5

    使用TSQL将表合并为一张表

  6. 6

    如何将来自CNN预测的多幅图像合并为一张图像?

  7. 7

    如何将多张图像合并为一张?

  8. 8

    VBA:如何将不同工作表上的两个范围合并为一个,以循环浏览

  9. 9

    VBA:如何将不同工作表上的两个范围合并为一个,以循环浏览

  10. 10

    使用phpmyad将两张表合并为一张

  11. 11

    将[日期,数据]格式的n张工作表合并为一张

  12. 12

    如何将多级统计信息合并到一张表中?

  13. 13

    同一张表中的多列结果

  14. 14

    引用同一张表中的不同列

  15. 15

    如何从同一张表的两列中获得一行中的不同结果?

  16. 16

    将多个Google电子表格合并为一张工作表

  17. 17

    将多个Google电子表格合并为一张工作表

  18. 18

    如何将一张表上的 3 列与另一张表中的 1 列连接起来?

  19. 19

    如何将两列连接到同一张表

  20. 20

    如何通过使用不同的列值引用同一张表来获取数据

  21. 21

    如何计算一张表中不同行和列之间的时间戳差异?

  22. 22

    根据mysql中另一张表中的值更新一张表中的多列

  23. 23

    在python中将不同工作表中的列合并为单个工作表

  24. 24

    如何比较同一张表中的记录列?

  25. 25

    如何将数据从一张excel表复制到另一张excel表?

  26. 26

    如何将双多对多关系映射到《学说2》中的同一张表?

  27. 27

    将一张以上的表合并到一张现有的表中

  28. 28

    在BASH中将不同长度的多列合并为一列

  29. 29

    在BASH中将不同长度的多列合并为一列

热门标签

归档