MySQL:选择具有不同列名称和数量的2个表

时间:2012-08-24 06:01:37

标签: mysql sql join

我需要帮助。 我有2张桌子。

  

表1包含4列(电子邮件,名字,姓氏,状态)

     

表2有1列(地址)

我想查询2个表格,结果如下:

  

包含5列的新表(电子邮件,名字,姓氏,状态,地址)

我已经尝试过像这样的JOIN语句

SELECT email, firstname, lastname, status FROM table1 LEFT JOIN table2 ON (0)

结果将只是table1中的4列。

如果我使用RIGHT JOIN,结果将是table1中相同的4列,buat all NULL values。

使用INNER JOIN,结果是table1中的4列,没有值。

然后我像这样使用UNION

SELECT email, firstname, lastname, status FROM table1
UNION
SELECT address, '', '', '' FROM table2

结果与LEFT JOIN RESULT相同。

我错过了什么吗?

2 个答案:

答案 0 :(得分:1)

如果两个表之间没有关系,我不明白是否需要制作两个单独的表。我建议你在表之间建立关系

一个例子是

 table1(email, firstname, lastname, addressID), table2(addressID,Address)

答案 1 :(得分:0)

如果你有这两个表,你可以像babooney说的那样做,或者你可以再制作一个有两个外键的表,一个来自table1,另一个来自table2。

示例:table3(id, id_table1, id_table2)