我有两个表,如下所示
条件(文本文件存储为表格)。
SNO Subject_id
1 A1
2 A2
3 A3
4 A4
观察
Id subject_id START_DATE END_DATE
1 D1 21/01/2007 21/01/2017
1 D2 23/05/1998 23/05/2008
1 D3 13/04/2017 13/04/2020
我希望我的输出如下。如您所见,subject_id
列来自文本文件(存储为条件表),但其余(Id, START_DATE, END_DATE)
列是静态且相同
Id subject_id START_DATE END_DATE
1 D1 21/01/2007 21/01/2017
1 D2 23/05/1998 23/05/2008
1 D3 13/04/2017 13/04/2020
2 A1 01/01/2000 01/01/2010
2 A2 01/01/2000 01/01/2010
2 A3 01/01/2000 01/01/2010
2 A4 01/01/2000 01/01/2010
这是我尝试过的方法,但由于观察表必须使用START_DATE
和END_DATE
,因此无法获得预期的输出。
insert into observation (Id,subject_id,start_date,end_date)
select '2',subject_id,'01/01/2000','01/01/2010' from condition;
可以帮我吗?
尝试使用联合:
SELECT Id, subject_id, START_DATE, END_DATE FROM Observation
UNION ALL
SELECT '2', subject_id, '01/01/2000', '01/01/2010' FROM condition
ORDER BY Id, subject_id;
如果您确实希望观察表看起来像您的预期输出,那么您当前的插入实际上是正确的。