2

これらは私のテーブルです:

テーブル 2 を使用してテーブル 1 を結合した場合、3 ~ 7 しかありません。この場合、どのような結合が必要ですか?

ありがとうございました

4

2 に答える 2

3

残念ながら、MySQLサポートしていませんFULL OUTER JOIN。それでも、それをエミュレートすることはできます。

SELECT  a.ID1,  
        b.ID2, 
        b.var1, 
        b.var2
FROM    TableA a
        LEFT JOIN TableB b
            ON a.ID2 = b.ID1
UNION 
SELECT  COALESCE(b.ID1, a.ID2), 
        a.ID2, 
        a.var1, 
        a.var2
FROM    Tableb a
        LEFT JOIN TableA b
            ON b.ID2 = a.ID1
于 2013-03-06T15:41:57.990 に答える
2

完全外部結合が必要です。MySql でのエミュレートについては、Xaprb によるこの記事を参照してください。

http://www.xaprb.com/blog/2006/05/26/how-to-write-full-outer-join-in-mysql/

于 2013-03-06T15:36:20.607 に答える