none
CONSULTA SQL RRS feed

  • Pregunta

  • Buen día, solicito de su acostumbrada ayuda con lo siguiente, yo tengo creada la tabla Mesa_puc_remedy y con base a esto tengo la consulta relacionada, quiero saber como puedo agregarle una nueva columna a esta tabla y que en esa nueva columna me traiga una condición, que todo lo que empiece en la columna problema con la palabra PUC le ponga PUC Remedy y lo que no solo le ponga Remedy.
    SELECT 
    A.Nro_REQ, A.Nro_WO_INC, A.Cliente, A.Estado, A.Direccion, A.Grupo_Resolutor, A.Usuario_Asignado, B.Nombre AS Analista, A.Problema,
    DAY(A.Fecha_creacion) Dia_Creacion, datename(MONTH, A.Fecha_creacion) Mes_Creacion, YEAR (A.Fecha_creacion) Año_Creacion,
    DAY(A.Fecha_Resolucion) Dia_Resolucion, datename(MONTH, A.Fecha_Resolucion) Mes_Resolucion, YEAR (A.Fecha_Resolucion) Año_Resolucion,
    DAY(A.Fecha_Cierre) Dia_Cierre, datename(MONTH, A.Fecha_Cierre) Mes_Cierre, YEAR (A.Fecha_Cierre) Año_Cierre, A.Notas, A.Resolucion1, A.Resolucion2,
    A.Resolucion3, A.Resolucion4, A.Resolucion5, A.Cant_Reinicidencias, A.Cant_Cierres, A.SLM_Status, DAY(A.Mes_Cierre) Dia_Reporte,
    datename(MONTH, A.Mes_Cierre) Mes_Reporte, YEAR (A.Mes_Cierre) Año_Reporte
    FROM Mesa_puc_remedy A
    LEFT JOIN OIM11_ReporteUsuarioYAplicativos B ON A.Usuario_Asignado=B.Login_OIM 
    WHERE Direccion IN ('DIGITALIZACION E2E Y OP COMERCIALES', 'OP COMERCIALES') AND Usuario_Asignado IN ('amleonme', 'ammorenopa', 'BSNIVIACA', 'caramirezme',
    'ccsacristago', 'cdsuarezco', 'davalenciaqu', 'dcbautistara', 'jvcastilloal', 'JVIVASMA', 'magarzonpi', 'mxanaconagu', 'mypradado',
    'ncruzam', 'PGPENAPE', 'yygomezhe') AND A.Estado <> 'Cancelado'

    viernes, 3 de abril de 2020 15:10

Respuestas

  • Hola Cristian8703:

    Como no tengo claro el resultado final, te pongo las dos posibilidades en dos columnas solucion1 y solucion2:

    SELECT A.Nro_REQ
    	 , A.Nro_WO_INC
    	 , A.Cliente
    	 , A.Estado
    	 , A.Direccion
    	 , A.Grupo_Resolutor
    	 , A.Usuario_Asignado
    	 , B.Nombre AS Analista
    	 , A.Problema
    	 , DAY(A.Fecha_creacion) Dia_Creacion
    	 , datename(MONTH, A.Fecha_creacion) Mes_Creacion
    	 , YEAR(A.Fecha_creacion) Año_Creacion
    	 , DAY(A.Fecha_Resolucion) Dia_Resolucion
    	 , datename(MONTH, A.Fecha_Resolucion) Mes_Resolucion
    	 , YEAR(A.Fecha_Resolucion) Año_Resolucion
    	 , DAY(A.Fecha_Cierre) Dia_Cierre
    	 , datename(MONTH, A.Fecha_Cierre) Mes_Cierre
    	 , YEAR(A.Fecha_Cierre) Año_Cierre
    	 , A.Notas
    	 , A.Resolucion1
    	 , A.Resolucion2
    	 , A.Resolucion3
    	 , A.Resolucion4
    	 , A.Resolucion5
    	 , A.Cant_Reinicidencias
    	 , A.Cant_Cierres
    	 , A.SLM_Status
    	 , DAY(A.Mes_Cierre) Dia_Reporte
    	 , datename(MONTH, A.Mes_Cierre) Mes_Reporte
    	 , YEAR(A.Mes_Cierre) Año_Reporte
    	 , CASE WHEN A.Problema like 'PUC%' THEN 'PUC Remedy' 
    		ELSE 'Remedy' END as Solucion1
    	 , CONCAT((CASE WHEN A.Problema like 'PUC%' THEN 'PUC Remedy' 
    		ELSE 'Remedy' END),' ', A.Problema)  as Solucion2
    	   FROM Mesa_puc_remedy A
    			LEFT JOIN OIM11_ReporteUsuarioYAplicativos B ON A.Usuario_Asignado = B.Login_OIM
    	   WHERE Direccion IN('DIGITALIZACION E2E Y OP COMERCIALES', 'OP COMERCIALES')
    			AND Usuario_Asignado IN('amleonme', 'ammorenopa', 'BSNIVIACA', 'caramirezme', 'ccsacristago', 'cdsuarezco', 'davalenciaqu', 
    			'dcbautistara', 'jvcastilloal', 'JVIVASMA', 'magarzonpi', 'mxanaconagu', 'mypradado', 'ncruzam', 'PGPENAPE', 'yygomezhe')
    AND A.Estado <> 'Cancelado'

    En solucion1 tienes solo los literales expresados. 

    En solución2 tienes los literales, mas el contenido de Problema.

    viernes, 3 de abril de 2020 17:05

Todas las respuestas

  • Hola Cristian8703

     

    Gracias por levantar tu consulta en los foros de MSDN. Con respecto a la misma, vamos a darte seguimiento e investigaremos para buscar la mejor respuesta para ti.

     

    Gracias por usar los foros de MSDN.

     

    Luis Diego Mora

     ____

     

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde. 

     

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.  

     

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    viernes, 3 de abril de 2020 16:22
    Moderador
  • Hola Cristian8703:

    Como no tengo claro el resultado final, te pongo las dos posibilidades en dos columnas solucion1 y solucion2:

    SELECT A.Nro_REQ
    	 , A.Nro_WO_INC
    	 , A.Cliente
    	 , A.Estado
    	 , A.Direccion
    	 , A.Grupo_Resolutor
    	 , A.Usuario_Asignado
    	 , B.Nombre AS Analista
    	 , A.Problema
    	 , DAY(A.Fecha_creacion) Dia_Creacion
    	 , datename(MONTH, A.Fecha_creacion) Mes_Creacion
    	 , YEAR(A.Fecha_creacion) Año_Creacion
    	 , DAY(A.Fecha_Resolucion) Dia_Resolucion
    	 , datename(MONTH, A.Fecha_Resolucion) Mes_Resolucion
    	 , YEAR(A.Fecha_Resolucion) Año_Resolucion
    	 , DAY(A.Fecha_Cierre) Dia_Cierre
    	 , datename(MONTH, A.Fecha_Cierre) Mes_Cierre
    	 , YEAR(A.Fecha_Cierre) Año_Cierre
    	 , A.Notas
    	 , A.Resolucion1
    	 , A.Resolucion2
    	 , A.Resolucion3
    	 , A.Resolucion4
    	 , A.Resolucion5
    	 , A.Cant_Reinicidencias
    	 , A.Cant_Cierres
    	 , A.SLM_Status
    	 , DAY(A.Mes_Cierre) Dia_Reporte
    	 , datename(MONTH, A.Mes_Cierre) Mes_Reporte
    	 , YEAR(A.Mes_Cierre) Año_Reporte
    	 , CASE WHEN A.Problema like 'PUC%' THEN 'PUC Remedy' 
    		ELSE 'Remedy' END as Solucion1
    	 , CONCAT((CASE WHEN A.Problema like 'PUC%' THEN 'PUC Remedy' 
    		ELSE 'Remedy' END),' ', A.Problema)  as Solucion2
    	   FROM Mesa_puc_remedy A
    			LEFT JOIN OIM11_ReporteUsuarioYAplicativos B ON A.Usuario_Asignado = B.Login_OIM
    	   WHERE Direccion IN('DIGITALIZACION E2E Y OP COMERCIALES', 'OP COMERCIALES')
    			AND Usuario_Asignado IN('amleonme', 'ammorenopa', 'BSNIVIACA', 'caramirezme', 'ccsacristago', 'cdsuarezco', 'davalenciaqu', 
    			'dcbautistara', 'jvcastilloal', 'JVIVASMA', 'magarzonpi', 'mxanaconagu', 'mypradado', 'ncruzam', 'PGPENAPE', 'yygomezhe')
    AND A.Estado <> 'Cancelado'

    En solucion1 tienes solo los literales expresados. 

    En solución2 tienes los literales, mas el contenido de Problema.

    viernes, 3 de abril de 2020 17:05
  • Me sirvió la ayuda, la consulta me funciono perfectamente. 
    viernes, 3 de abril de 2020 19:38