我假设这三个表各有两列:Run_Dateand Total Defects, Not Closedor Closed。如果您有一个包含所有运行日期的表,则可以使用以下方法:
SELECT
  RunDates.Run_Date,
  T_D.[Total Defects],
  T_O.[Not Closed],
  T_C.[Closed]
FROM ((
  RunDates
  LEFT JOIN T_C ON RunDates.Run_Date = T_C.Run_Date)
  LEFT JOIN T_O ON RunDates.Run_Date = T_O.Run_Date)
  LEFT JOIN T_D ON RunDates.Run_Date = T_D.Run_Date
如果没有,您将需要使用 UNION(而不是 UNION ALL)构建一个:
SELECT
  RunDates.Run_Date,
  T_D.[Total Defects],
  T_O.[Not Closed],
  T_C.[Closed]
FROM ((
  (SELECT Run_Date FROM T_C
   UNION
   SELECT Run_Date FROM T_O
   UNION SELECT Run_Date FROM T_D) AS RunDates
   LEFT JOIN T_C ON RunDates.Run_Date = T_C.Run_Date)
   LEFT JOIN T_O ON RunDates.Run_Date = T_O.Run_Date)
   LEFT JOIN T_D ON RunDates.Run_Date = T_D.Run_Date