Brug ikke aliaset (P ) i din WHERE klausul direkte.
Du kan enten bruge den samme REPLACE logik igen i WHERE klausul:
SELECT Replace(Postcode, ' ', '') AS P
FROM Contacts
WHERE Replace(Postcode, ' ', '') LIKE 'NW101%'
Eller brug en underordnet underforespørgsel som beskrevet i Nicks svar.