Mysql结果集串联列明智

时间:2014-03-26 08:55:50

标签: mysql sql

select * from
(select 1 )t1 join (select 2)t2 this will return result like i want 

col1 |col2
-----|----
1    |2  

但是如果内部查询返回超过1行,它将无效。

如果我的内部查询返回2行,例如select 1,2 union select 3,4,那么如何加入另一个查询select 5,6 union select 7,8,以获得如下所示的结果

col1 |col2|col3|col4
-----|----|----|----
1    |2   |5   |6
3    |4   |7   |8

我的要求非常混乱。 任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

奇怪的要求,但认为你需要一个查询来生成每一行,然后将它们结合在一起: -

SELECT *
FROM
(SELECT 1,2) t1 JOIN (SELECT 5,6) t2
UNION 
SELECT *
FROM
(SELECT 3,4) t1 JOIN (SELECT 7,8) t2