Simplify your second query, and the problem should be obvious:
SELECT
...
FROM
parts.Nop_Part As p
LEFT JOIN
(
SELECT mp.PartID
FROM parts.Nop_Part As mp
) As x
ON x.PartID = p.PartID
WHERE
x.PartID Is Null
Or, putting that a different way:
SELECT
...
FROM
parts.Nop_Part As p
WHERE
Not Exists
(
SELECT 1
FROM parts.Nop_Part As mp
WHERE mp.PartID = p.PartID
)
How many parts are there going to be in your table which don't exist in
the same table? :)