Я застрял при преобразовании varchar столбца UserID в INT. Я знаю, пожалуйста, не спрашивайте, почему этот UserID столбец не был создан как INT первоначально, длинная история.
Я попробовал это, но это не сработало. и дай мне ошибку:
select CAST(userID AS int) from audit
Ошибка:
Ошибка преобразования при преобразовании значения varchar '1581............................................................................................................................ 'к типу данных int.
Я select len(userID) from audit и он возвращает 128 символов, которые не являются пробелами.
Я попытался определить символы ASCII для тех, кто тянется после идентификатора и значения ASCII = 0.
Я также попытался LTRIM, RTRIM и заменить char(0) на '', но не работает.
Единственный способ это работает, когда я говорю фиксированное количество символов, как это ниже, но UserID не всегда 4 символа.
select CAST(LEFT(userID, 4) AS int) from audit