在单列中选择两个表不同的字段?

时间:2013-04-10 12:49:44

标签: php mysql join union

我需要在一列中加入两个包含不同字段的表格列

表1就像这样

id1        Name1        class1
1          aaa          CS
2          bbb          MBA
3          ccc          MCA

另一个表文件为table2

id2         name2         class2
1           ddd           CS
2           eee           MBA
3           fff           MCA

我想将表格选择为sinlge结果为

结果:

id2         name2         class2
1           aaa           CS
2           bbb           MBA
3           ccc           MCA   
1           ddd           CS
2           eee           MBA
3           fff           MCA

3 个答案:

答案 0 :(得分:2)

UNION ALL就是你所需要的。它也保留重复。

SELECT ID1 ID, Name1 Name, Class1 Class FROM Table1
UNION ALL
SELECT ID2 ID, Name2 Name, Class2 Class FROM Table2

如果您想让结果与众不同,请删除ALL

SELECT ID1 ID, Name1 Name, Class1 Class FROM Table1
UNION
SELECT ID2 ID, Name2 Name, Class2 Class FROM Table2

答案 1 :(得分:0)

你的意思是内心?

例如:

SELECT * FROM Table1 INNER JOIN Table2  ON Table.Class1 = Table2.Cat_ID 
    INNER JOIN tbl_Klant   ON tbl_Project.KlantID 

或者你是什么意思?

答案 2 :(得分:0)

您可以使用UNION ALLUNION。 UNION和UNION ALL之间的区别在于Union all不会消除重复的行,而只是从所有符合查询细节的表中提取所有行,并将它们组合成一个表。

UNION与从这两个表格中获得的结果集上的Select Distinct类似 要从两个表中检索所有行,请执行UNION ALL

SELECT ID1 ID, Name1 Name, Class1 Class FROM Table1
UNION ALL
SELECT ID2 ID, Name2 Name, Class2 Class FROM Table2

或唯一行

SELECT ID1 ID, Name1 Name, Class1 Class FROM Table1
UNION 
SELECT ID2 ID, Name2 Name, Class2 Class FROM Table2