2015-05-29 83 views
-3

我有两个选择查询像结合两种选择查询

select name1,age1 from table1 

输出:

+--------+------+ 
| name1 | age1 | 
+--------+------+ 
| ravi | 25 | 
| rakhav | 12 | 
| joil | 10 | 
+--------+------+ 

select color,no from table2 

输出

+--------+----+ 
| color | no | 
+--------+----+ 
| red | 3 | 
| yellow | 4 | 
+--------+----+ 

我希望输出像

+--------+------+--------+----+ 
| name1 | age1 | color | no | 
+--------+------+--------+----+ 
| ravi | 25 | red | 3 | 
| rakhav | 12 | yellow | 4 | 
| joil | 10 |  | | 
+--------+------+--------+----+ 
+1

如果没有'ORDER BY'你的两个SELECT语句会以随机顺序返回行。 table2的哪些行与table1的哪些行一起进行? –

+0

如果你只是试图用一个查询来获得两个完全不相关的信息,那就不要。使用两个查询。否则,解释它们是如何相关的。 –

+0

是完全不相关的棋子... – junsid

回答

3

试试这个:

select * from 
(select name1, age1, row_number() over(order by age1 desc) as rn from table1) as t1 
left join 
(select color, no, row_number() over(order by no) as rn from table2) as t2 
on t1.rn = t2.rn 
+0

谢谢你Giorgi Nakeuri .... – junsid

0

尝试select t1.*, t2.* from table1 t1, table2 t2

+0

其像棋子一样交叉加入 – junsid

+0

是的,但是如何合并2张桌子上的记录? – tning