Ver Mensaje Individual
  #8 (permalink)  
Antiguo 16/07/2014, 14:01
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Filtrar cabeceras de columnas de acuerdo a un criterio

Cita:
Iniciado por ambichol Ver Mensaje
Libras, que tal...ya pude solucionar el problema...indaque en la web....y encontre un codigo que me sirvio, pero o adapte a lo que necesitaba:
Código SQL:
Ver original
  1. DECLARE @CSALIENTES VARCHAR(MAX)
  2. DECLARE @CENTRANTES VARCHAR(MAX)
  3. DECLARE @SQLQUERY VARCHAR(MAX);
  4.  
  5. SET @CSALIENTES = ''
  6. SET @CENTRANTES = ''
  7.  
  8. SELECT @CSALIENTES =  COALESCE(@CSALIENTES + 'ISNULL(ROUND(S' + CAST(DIA AS VARCHAR(2)) + ',2),0)S'+CAST(DIA AS VARCHAR(2))+',', '')
  9. FROM (SELECT DISTINCT DIA FROM REP_DIARIO) AS DTM
  10. --
  11. SELECT @CENTRANTES =  COALESCE(@CENTRANTES + 'ISNULL(ROUND(E' + CAST(DIA AS VARCHAR(2)) + ',2),0)E'+CAST(DIA AS VARCHAR(2))+',', '')
  12. FROM (SELECT DISTINCT DIA FROM REP_DIARIO) AS DTM
  13. --
  14. SET @CSALIENTES = LEFT(@CSALIENTES,LEN(@CSALIENTES)-1)
  15. SET @CENTRANTES = LEFT(@CENTRANTES,LEN(@CENTRANTES)-1)
  16. --
  17. SET @SQLQUERY = N'
  18. SELECT DEPARTAMENTO,RIGHT(''000''+CAST(LEFT([TELÉFONO],2) AS VARCHAR(3)),3)COD_ACCESO,SUBSTRING([TELÉFONO],3,7)TT_PP,''SALIENTE'' TIPO_TRAFICO,
  19. '+@CSALIENTES+'
  20. FROM Planta_Rep_PA_201401
  21. WHERE TIPO NOT IN (''-'')
  22. UNION
  23. SELECT DEPARTAMENTO,RIGHT(''000''+CAST(LEFT([TELÉFONO],2) AS VARCHAR(3)),3)COD_ACCESO,SUBSTRING([TELÉFONO],3,7)TT_PP,''ENTRANTE'' TIPO_TRAFICO,
  24. '+@CENTRANTES+'
  25. FROM Planta_Rep_PA_201401
  26. WHERE TIPO NOT IN (''-'')
  27. ORDER BY 4,2'
  28.  
  29. EXEC (@SQLQUERY)

a tu parecer...esta bien este planteamiento...???
Pues no entendi bien que querias obtener, pero si te funciona esta bien :)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me