DISTINCT возвращает различные комбинации всех столбцов в операторе SELECT, поэтому введение второго столбца также вводит дуплексы.
Похоже, что вы можете уйти с предложением WHERE:
SELECT DISTINCT ([Equipment List].ID) AS Expr1, [Job Assignments].Job
FROM [Equipment List]
LEFT JOIN [Job Assignments] ON [Equipment List].ID = [Job Assignments].EquipmentID
WHERE [Job Assignments].[Date Returned] IS NULL
У вас не может быть «пустой» даты, поэтому, если вы видите пробелы, скорее всего, вы не используете тип datetime для хранения своей даты - в этом случае вам нужно будет сказать:
WHERE COALESCE([Job Assignments].[Date Returned], '') = ''
Редактировать: последнее решение на основе комментариев ниже:
;WITH LatestJobs
AS
(SELECT ja.EquipmentID, ja.Job,
ROW_NUMBER() OVER ( PARTITION BY EquipmentID
ORDER BY [Date Returned] DESC) AS RowNumber
FROM [Job Assignments] AS ja)
SELECT el.ID AS EquipmentID,
lj.Job
FROM [Equipment List] AS el
LEFT JOIN LatestJobs AS lj ON el.ID = lj.EquipmentID
AND lj.RowNumber = 1