提问者:小点点

生成变量的所有组合并插入临时表


我有一个要求,有4个变量,我想要4个变量的所有组合,并插入到临时表。

DECLARE StartDateTime DATETIME;
DECLARE Age INT; 
DECLARE Duration INT ;
DECLARE TotalDD INT;

CREATE TEMPORARY TABLE tempTable(
    Duration INT,
    TotalDD INT,
    Age INT,
    StartDateTime DATETIME,
   
);
SET Age = 16;
SET TotalDD = 14;
SET Duration = 30;
SET StartDateTime = CURDATE();

例外结果:

Duration age TotalDD StartDateTime
30 null null null
null 16 null null
30 null null null
30 16 null null
null null 14 20200622
30 null 14 null
30 16 null 20200622

。。。。。。。 。。。。。。 等等

请帮我做这件事


共1个答案

匿名用户

我认为您需要交叉联接:

select *
from (select 16 as age union all select null) a cross join
     (select 14 as totaldd union all select null) t cross join
     (select 30 as duration union all select null) d cross join
     (select CURDATE() as StartDateTime union all select null) s

相关问题