Oracle Business Intelligence Foro
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

CASE WHEN

2 participantes

Ir abajo

CASE WHEN  Empty CASE WHEN

Mensaje  Lateralus Lun 14 Ene 2013, 12:08

Holap,

Tengo varias métricas y años en una tabla dinámica. Y de dichas métricas, necesito que una (métrica_x) no se muestre para el año 2011, o que simplemente escriba un valor (N/A). Pues bien, he creado una función CASE WHEN tal que así en su formato de columna:

CASE WHEN MÉTRICA_X AND AÑO='2011' THEN MÉTRICA_X='N/A' ELSE MÉTRICA_X


Pues no me funciona!
Lateralus
Lateralus

Cantidad de envíos : 174
Localización : Madrid
Fecha de inscripción : 01/06/2010

Volver arriba Ir abajo

CASE WHEN  Empty Re: CASE WHEN

Mensaje  Lateralus Lun 14 Ene 2013, 19:47

Solucionado:

CASE WHEN "D Tiempo"."Año"=2011 THEN 'N/A' ELSE case WHEN length(CAST("TH"."métrica1" AS CHAR)) < 4 THEN CAST("TH"."métrica1" AS CHAR) ELSE substring(CAST("TH"."métrica1" AS CHAR),1,length(CAST("TH"."métrica1" AS CHAR))-3) ||'.'||substring(CAST("TH"."métrica1" AS CHAR),2,7) END END



salu2!
Lateralus
Lateralus

Cantidad de envíos : 174
Localización : Madrid
Fecha de inscripción : 01/06/2010

Volver arriba Ir abajo

CASE WHEN  Empty Re: CASE WHEN

Mensaje  bvillamor Lun 14 Ene 2013, 19:59

Hola,
ya sé que lo has solucionado pero aprovecho para aclarar el motivo del error. El tipo de dato que devuelve un CASE debe ser único para todas las opciones. Si en uno de los casos quieres devolver un texto y en otro un número, tendrás que usar el cast para convertirlo todo a texto. Por eso te funciona la fórmula final.

Saludos,
bvillamor
bvillamor

Cantidad de envíos : 388
Localización : Madrid
Fecha de inscripción : 18/02/2009

http://www.adiante.es

Volver arriba Ir abajo

CASE WHEN  Empty Re: CASE WHEN

Mensaje  Lateralus Lun 14 Ene 2013, 21:33

Exacto bvillamor,

por eso he usado los cast's, pero hasta darme cuenta he flipao un poquito...
Lateralus
Lateralus

Cantidad de envíos : 174
Localización : Madrid
Fecha de inscripción : 01/06/2010

Volver arriba Ir abajo

CASE WHEN  Empty Re: CASE WHEN

Mensaje  Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.