我需要以不会重复信息的方式将Table1附加到Table2。
示例:
表1
Name | Age
-------|-----
Jason | 30
John | 40
Joseph | 50
Bob | 60
表2
Type
--------
Dog
Cat
Fish
我需要一个联接来制作
Name | Age | Type
------|-----|-------
Jason | 30 | Dog
John | 40 | Cat
Joseph| 50 | Fish
Bob | 60 | NULL
所以它只返回四行而不是12行或更多。没有ID或其他信息可以将这两个表关联起来。
答案 0 :(得分:2)
试试这个:
SELECT A.rank, A.NAME, A.AGE, B.TYPE FROM
(select @rownum:=@rownum+1 ‘rank’, T1.NAME, T1.AGE from
TABLE1 T1, (SELECT @rownum:=0) r) A
LEFT JOIN
(select @rownum:=@rownum+1 ‘rank’, T2.TYPE from
TABLE2 T2, (SELECT @rownum:=0) r) B
ON A.rank = B.rank
并查看以下内容:
http://craftycodeblog.com/2010/09/13/rownum-simulation-with-mysql/
http://jimlife.wordpress.com/2008/09/09/displaying-row-number-rownum-in-mysql/
答案 1 :(得分:0)
如果可能,尝试更改两个表以添加索引列,然后以这种方式连接索引列
ALTER table1 add id INT NOT NULL;
ALTER table2 add id INT NOT NULL;
select table1.Name, table1.Age, table2.Type from table1 inner join table2 on table1.id= table2.id