Скорее всего, возвращаются повторяющиеся строки. Возможно, вы сможете использовать CTE. Пример:
;WITH catCTE([ecatalogue_key],
[LocHolderName],
[EADUnitTitle])
AS (SELECT DISTINCT
[Ecatalogue_key],
[LOCHOLDERNAME],
[EADUNITTITLE]
FROM [ecatalog].[csv]),
eadCTE([NamFullName])
AS (SELECT DISTINCT
[ecatalogue_key],
[namfullname]
FROM [EADOrigi].[csv])
SELECT [o].[NamFullName],
[e].[LocHolderName],
[e].[EADUnitTitle]
FROM [catCTE] AS [e]
JOIN [eadCTE] AS [o] ON [e].[ecatalogue_key] = [o].[ecatalogue_key];