让我们说我有2个不同的select语句,每个语句提供一列。 让我们假设select语句提供以下数据:
SELECT 1 SELECT 2
|id| |nr|
---- ----
456 14
234 5
512 26
678 67
987 87
632 24
我试图找出如何进行查询以插入此数据,如下所示:
my_table
| id | nr | col3 | ...
456 14 ...
234 5 ...
512 26 ...
678 67 ...
...
我必须提到,在我的选择中,我使用多行子查询。
感谢你!
答案 0 :(得分:0)
在MySQL中,您可以使用变量枚举值,然后使用join
:
select . . .
from (select s.*, (@rn1 := @rn1 + 1) as rn
from (<select 1>) s cross join
(select @rn1 := 0) params
) s1 join
(select s.*, (@rn2 := @rn2 + 1) as rn
from (<select 2>) s cross join
(select @rn2 := 0) params
) s2
on s1.rn = s2.rn;
我建议在每个子查询中加上一个明确的order by
。