Necesito saber si hay alguna función en sql server que pueda agregar en un Select que me permita devolver una columna en base a la evaluación de algún criterio, como el IIF de access o el Decode de Oracle, que según un criterio, devuelven un valor por verdadero y otro por falso.
Respuesta de denciso
1
1
denciso, Soy una persona multifacética, tanto manejo la informática,...
Puedes usar el case Utilizar CASE La función CASE es una expresión especial de Transact-SQL que permite que se muestre un valor alternativo dependiendo del valor de una columna. Este cambio es temporal, con lo que no hay cambios permanentes en los datos. Por ejemplo, la función CASE puede mostrar California en un conjunto de resultados de una consulta de las filas que tengan el valor CA en la columna state. La función CASE está compuesta de: La palabra clave CASE. El nombre de columna que se va a transformar. Cláusulas WHEN que especifican las expresiones que se van a buscar y cláusulas THEN que especifican las expresiones que las van a reemplazar. La palabra clave END. Una cláusula AS opcional que define un alias de la función CASE. En este ejemplo se muestra, en el conjunto de resultados de la consulta, el nombre completo del estado en el que vive cada autor: SELECT au_fname, au_lname, CASE state WHEN 'CA' THEN 'California' WHEN 'KS' THEN 'Kansas' WHEN 'TN' THEN 'Tennessee' WHEN 'OR' THEN 'Oregon' WHEN 'MI' THEN 'Michigan' WHEN 'IN' THEN 'Indiana' WHEN 'MD' THEN 'Maryland' WHEN 'UT' THEN 'Utah' END AS StateName FROM pubs.dbo.authors ORDER BY au_lname Véase también CASE Nullif Coalesce Procesamiento condicional de los datos con CASE