Nie używaj aliasu (P ) w swoim WHERE klauzuli bezpośrednio.
Możesz użyć tego samego REPLACE logika ponownie w WHERE klauzula:
SELECT Replace(Postcode, ' ', '') AS P
FROM Contacts
WHERE Replace(Postcode, ' ', '') LIKE 'NW101%'
Lub użyj podzapytania z aliasem, jak opisano w odpowiedziach Nicka.