Ver Mensaje Individual
  #2  
Antiguo 31-12-2004
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Reputación: 24
vtdeleon Va por buen camino
Saludos,

Cita:
Empezado por fjcg02
Una preguntita. ¿ Existe algo similar al TRANSFORM de Access , o algo similar al DECODE de Oracle en SQL Server ?
Tenia ese problema antes y la ayuda de SQL Query Analyzer tiene un ejemplo parecido con el CASE THEN

Ejemplo:

Tienes una tabla llama Pivot con esta estructura y contenido,
Código:
Year_____Quarter_____Amount
 1990______1__________ 1.1
 1990______2__________ 1.2
 1990______3__________ 1.3
 1990______4__________ 1.4
 1991______1__________ 2.1
 1991______2__________ 2.2
 1991______3__________ 2.3
 1991______4__________ 2.4
***********************************************************
Con esto:

Código SQL [-]
SELECT Year, 
 ____SUM(CASE Quarter WHEN 1 THEN Amount ELSE 0 END) AS Q1,
 ____SUM(CASE Quarter WHEN 2 THEN Amount ELSE 0 END) AS Q2,
 ____SUM(CASE Quarter WHEN 3 THEN Amount ELSE 0 END) AS Q3,
 ____SUM(CASE Quarter WHEN 4 THEN Amount ELSE 0 END) AS Q4
 FROM Pivot
 GROUP BY Year


puedes transformala a
Código:
 Year___Q1____ Q2____Q3_____Q4
 1990____1.1____1.2____ 1.3____ 1.4
 1991____2.1____2.2____ 2.3____ 2.4
****************************************************

Se agrupa el Año 2 registros y los Quarter se convierten en Columnas (Q#)mostrando el contenido respectivo a cada año.


Espero ser claro y que te sirve

Última edición por vtdeleon fecha: 23-07-2005 a las 06:33:43.
Responder Con Cita