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.