【问题标题】:Combining mysql tables合并mysql表
【发布时间】:2011-03-07 09:37:56
【问题描述】:

如何合并表格X and Y:

table X (columnA, columnB, columnC)
table Y (columnA, columnB, columnD)

获取 (columnA, columnB, columnC, columnD) ?

我希望看到 NULL 值...

更具体地说,这里是表格的内容:

tableX:
A   B   C
1 | 0 | 0
2 | 0 | 0

tableY:
A   B   D
3 | 0 | 0
4 | 0 | 0

result:
A   B   C   D
1 | 0 | 0 | NULL
2 | 0 | 0 | NULL
3 | 0 | NULL | 0
4 | 0 | NULL | 0

【问题讨论】:

    标签: mysql union


    【解决方案1】:

    我不认为他希望加入,只是连接:

    SELECT columnA, columnB, columnC, null as columnD
    FROM tableX
    UNION ALL
    SELECT columnA, columnB, null as columnC, columnD
    FROM tableY
    

    【讨论】:

    • 这很好,除了 columnD 在表中被命名为“null”:tableZ(columnA, columnB, columnC, NULL)
    【解决方案2】:

    如果两个表(x&y) 的columnA 都被引用,则在下面使用

    SELECT x.columnA,x.columnB,x.columnC,y.columnD
    FROM tableX x
    LEFT JOIN tabley y ON y.columnA=x.columnA
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-12
      • 2011-04-11
      • 2012-12-22
      • 2013-05-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多