Możesz użyć następującego zapytania:
SELECT id, name, partNumber, Aid, Aname, Apart
FROM TableB AS t
CROSS JOIN (SELECT id AS Aid, name AS Aname, partNumber AS Apart
FROM TableA AS a
WHERE NOT EXISTS (SELECT 1
FROM TableB AS b
WHERE b.partNumber = a.partNumber)) AS c
ORDER BY id
Chodzi o to, aby wybrać wszystkie wymagane rekordy z TableA używając NOT EXISTS klauzula. Następnie CROSS JOIN tabela pochodna z tego zapytania z Table1 aby uzyskać wszystkie możliwe kombinacje.