将2个sql表连接到一个表中

时间:2018-01-03 13:43:32

标签: mysql sql sql-server

我试图将ID列表链接到SQL中的日期列表。

这是我在不同表格中的数据。

|   Date   | ID |
|2017-12-25| 1  |
|2017-12-26| 2  |
|2017-12-27| 3  |

我想将其合并到

|   Date   | ID |
|2017-12-25| 1  |
|2017-12-25| 2  |
|2017-12-25| 3  |
|2017-12-26| 1  |
|2017-12-26| 2  |
|2017-12-26| 3  |
|2017-12-27| 1  |
|2017-12-27| 2  |
|2017-12-27| 3  |

2 个答案:

答案 0 :(得分:0)

我会将CROSS JOIN用于SQL Server

select a.[date], t.id from table t
cross join 
(
    select * from table
)a

答案 1 :(得分:0)

您可能希望MERGE

MERGE table1 <alias1>
USING table2 <alias2>
ON <alias1>.ID = <alias2>.ID
WHEN NOT MATCHED BY TARGET THEN
INSERT (ID, Date)
VALUES (<alias1>.ID, <alias1>.Date);

SELECT * FROM table1;