Я пытаюсь построить оператор case / if в предложении JOIN ON
.
LEFT JOIN [CTSTRC] [Statuses] ON RIGHT([Statuses].[STRID], 3) = [CTE].[F61]
Проблема в том, что столбец [Statuses].[STRID]
содержит текст и цифры. Столбец, который я сравниваю с [CTE].[F61]
, является целым числом.
Есть ли способ определить, есть ли в столбце [Statuses].[STRID]
символ или число, а затем установить его на 0, если это символ?
Вот псевдопросмотр в помощь:
LEFT JOIN [CTSTRC] [Statuses] ON RIGHT((CASE [Statuses].[STRID] WHEN TEXT THEN 0 ELSE CAST([Statuses].[STRID] AS INT) END), 3) = [CTE].[F61]
Может ли кто-нибудь указать мне правильное направление?
Спасибо!