Declaración de caso de T-SQL en una cláusula JOIN ON
stoy tratando de construir una declaración de caso / si en unJOIN ON
cláusula.
LEFT JOIN [CTSTRC] [Statuses] ON RIGHT([Statuses].[STRID], 3) = [CTE].[F61]
El problema es que la columna[Statuses].[STRID]
contiene texto y números. La columna la estoy comparando con[CTE].[F61]
es un entero.
¿Hay alguna manera de detectar si la columna[Statuses].[STRID]
tiene un carácter o un número y ENTONCES lo establece en 0 si es un carácter?
Aquí hay una pseudo consulta para ayudar:
LEFT JOIN [CTSTRC] [Statuses] ON RIGHT((CASE [Statuses].[STRID] WHEN TEXT THEN 0 ELSE CAST([Statuses].[STRID] AS INT) END), 3) = [CTE].[F61]
¿Alguien me puede apuntar en la dirección correcta
¡Gracias