我有一个表名T1只有一个列名Col1有行 -
Col1
a
b
c
另一个表名T2也只有一个列名Col1有行 -
Col1
x
y
z
现在我想要像
这样的记录Col1--Col2
a------x
b------y
c------z
我正在使用mysql。 在此先感谢!!
答案 0 :(得分:3)
create table T1(col1 varchar(10));
insert T1 values ('a'),('b'),('c');
create table T2(col2 varchar(10));
insert T2 values ('x'),('y'),('z');
select A.col1, B.col2 from
(select @r:=@r+1 rownum, col1 from (select @r:=0) initvar, T1) A,
(select @s:=@s+1 rownum, col2 from (select @s:=0) initvar, T2) B
where A.rownum=B.rownum
因为没有ORDER BY子句,所以根据插入的顺序,行编号取决于运气和约定。 可能并非总是如此。
答案 1 :(得分:0)
在您的示例中,如果您想要连接表以获得如下行结果:
..然后你必须添加一个可以加入两个表的公共字段。
如果您希望能够从这两个表中返回结果:
..那么你需要使用UNION:
(SELECT Col1 FROM T1) UNION (SELECT Col1 FROM T2)