Итак, у меня есть две таблицы, на которые я буду ссылаться с помощью INNER JOIN.С одной стороны тип столбца Number(3, 0)
, а с другой - Varchar(150)
.Видя, что я НЕ могу изменить типы данных, я должен привести его к соединению.Но в таблице, где столбец varchar, строка всегда имеет 3 цифры, такие как «001», «010» или даже «100» и т. Д. *
Мое решениеиспользуйте Case
в соединении следующим образом:
INNER JOIN TAB1 ON TAB1.VARCHAR_COL = Cast(Case...), AS Varchar(150)
Case
должен отформатировать число в строку с префиксом цифр дерева, как упомянуто выше.Если данные поступают в виде «1», регистр должен быть отформатирован как «001», если в качестве «10» используется «010» ...
Помогите мне с Case
.
Редактировать: В столбце varchar есть некоторые значения, которые не являются числами, поэтому приведение к нему показывает ошибку.