Tengo una gran consulta que utiliza caso/cuando a menudo. Ahora tengo este SQL aquí, que no funciona.¿Cómo uso Case/When de T-SQL?
(select case when xyz.something = 1
then
'SOMETEXT'
else
(select case when xyz.somethingelse = 1)
then
'SOMEOTHERTEXT'
end)
(select case when xyz.somethingelseagain = 2)
then
'SOMEOTHERTEXTGOESHERE'
end)
end) [ColumnName],
¿Cuál es causar problemas xyz.somethingelseagain = 2
, dice que no pudo enlazar esa expresión. xyz es un alias para una tabla que se une más abajo en la consulta. ¿Qué pasa aquí? Eliminar uno de los 2 casos/whens corrige eso, pero los necesito a ambos, probablemente aún más casos.
Obras, cuál es la diferencia? :) – grady
Digamos que tengo algunos de los whens como duplicados, como este: CUANDO xyz.something = 1 y xyz.abc = 2 THEN 'SOMETEXT' CUANDO xyz.something = 1 y xyz.abc <> 2 THEN 'SOMEOTHERTEXT' ¿Puedo de alguna manera decir que si se configuró el primero cuando se salten los próximos? Algo que se escapa del caso/¿Cuándo? – grady