我有4个不同列的表,其中ID是所有4个表中的公共值。在所有4个表中都有一个名为EventDate的列,但对于相同的ID具有不同的值或NULL值。新表应该只有ID和EventDate。
我想基于EventDate(即)比较所有4个表,如果两个表具有相同的日期,它应该将最小日期插入新表中。
答案 0 :(得分:1)
使用UNION ALL
组合所有内容并获取每个ID的最短日期
SELECT ID, MIN(EventDate) AS MIN_DTE INTO NEW_TABLE FROM (
SELECT ID, EventDate from TABLE1
UNION ALL
SELECT ID, EventDate from TABLE2
UNION ALL
SELECT ID, EventDate from TABLE3
UNION ALL
SELECT ID, EventDate from TABLE4
)A
GROUP BY ID