Неверный параметр длины, переданный в функцию LEFT или SUBSTRING

Я видел несколько из этих вопросов, но не заметил, что это помогло !! Я пытаюсь выбрать только первую часть почтового индекса, практически игнорируя все, что находится после пробела. код, который я использую,

SUBSTRING(PostCode, 1 , CHARINDEX(' ', PostCode ) -1)

однако я получаю параметр неверной длины, переданный в функцию LEFT или SUBSTRING! Там нет нулей или пробелов, но есть некоторые, которые имеют только первую часть. это то, что вызывает ошибку, и если да, то как обходной путь ?!