I would take a different path.
WHERE (p.PartNoAlias='' OR w.PartNoAlias=p.PartNoAlias)
However, I'm not sure this is the best for your query. Seems like you're trying to do a left join with ANSI-89 syntax. If you post your entire query and possibly DDL and sample data, you could get better help.