Ciò accadrebbe solo se PostCode manca uno spazio. Puoi aggiungere condizionalità in modo tale che tutto PostCode viene recuperato se non viene trovato uno spazio come segue
select SUBSTRING(PostCode, 1 ,
case when CHARINDEX(' ', PostCode ) = 0 then LEN(PostCode)
else CHARINDEX(' ', PostCode) -1 end)