Ver Mensaje Individual
  #10  
Antiguo 17-05-2010
sizne sizne is offline
Miembro
 
Registrado: mar 2010
Posts: 104
Reputación: 15
sizne Va por buen camino
Hola!!!
Tienes razon...
...Aqui tengo la consulta, obtengo lo resultado, solo que por decir en un año a XAlumno se le dio solo 4 meses la beca, pues el registro se me repite las 4 veces....Siendo que 700 se da cada mes.
IdE---Nom---Febrero---Marzo--Abril--Mayo--Junio--....Diciembre--Total
-1----Juan----700------700---700---700----NULL-.......--NULL--....700
-1----Juan----700------700---700---700----NULL-.......--NULL--....1400
-1----Juan----700------700---700---700----NULL-.......--NULL--....2100
-1----Juan----700------700---700---700----NULL-.......--NULL--....2800

Lo que quiero obtener de resultado es en un solo registro:
IdE---Nom---Febrero---Marzo--Abril--Mayo--Junio--....Diciembre--Total
1----Juan----700------700---700---700----NULL-.......--NULL--....2800

Código SQL [-]
SELECT i.IdE,i.NomE,YEAR(b.Fecha)as Anio,b.MontoTR,
 (SELECT TotalRecibido FROM BDbeca b1 WHERE  b1.IdE=b.IdE AND YEAR(b1.Fecha)=YEAR(b.Fecha)AND MONTH(b1.Fecha)=2) AS Febrero,
 (SELECT TotalRecibido FROM BDbeca b1 WHERE b1.IdE=b.IdE AND YEAR(b1.Fecha)=YEAR(b.Fecha)AND MONTH(b1.Fecha)=3) AS Marzo,
 (SELECT TotalRecibido FROM BDbeca b1 WHERE  b1.IdE=b.IdE AND YEAR(b1.Fecha)=YEAR(b.Fecha)AND MONTH(b1.Fecha)=4) AS Abril,
 (SELECT TotalRecibido FROM BDbeca b1 WHERE b1.IdE=b.IdE AND YEAR(b1.Fecha)=YEAR(b.Fecha)AND MONTH(b1.Fecha)=5) AS Mayo,
 (SELECT TotalRecibido FROM BDbeca b1 WHERE  b1.IdE=b.IdE AND YEAR(b1.Fecha)=YEAR(b.Fecha)AND MONTH(b1.Fecha)=6) AS Junio,
 (SELECT TotalRecibido FROM BDbeca b1 WHERE b1.IdE=b.IdE AND YEAR(b1.Fecha)=YEAR(b.Fecha)AND MONTH(b1.Fecha)=7) AS Julio,
 (SELECT TotalRecibido FROM BDbeca b1 WHERE  b1.IdE=b.IdE AND YEAR(b1.Fecha)=YEAR(b.Fecha)AND MONTH(b1.Fecha)=8) AS Agosto,
 (SELECT TotalRecibido FROM BDbeca b1 WHERE b1.IdE=b.IdE AND YEAR(b1.Fecha)=YEAR(b.Fecha)AND MONTH(b1.Fecha)=9) AS Septiembre,
 (SELECT TotalRecibido FROM BDbeca b1 WHERE  b1.IdE=b.IdE AND YEAR(b1.Fecha)=YEAR(b.Fecha)AND MONTH(b1.Fecha)=10) AS Octubre,
 (SELECT TotalRecibido FROM BDbeca b1 WHERE b1.IdE=b.IdE AND YEAR(b1.Fecha)=YEAR(b.Fecha)AND MONTH(b1.Fecha)=11) AS Noviembre,
 (SELECT TotalRecibido FROM BDbeca b1 WHERE b1.IdE=b.IdE AND YEAR(b1.Fecha)=YEAR(b.Fecha)AND MONTH(b1.Fecha)=12) AS Diciembre
FROM BDinscripcion i INNER JOIN BDbeca b ON i.IdE=b.IdE
WHERE  year (b.Fecha)='2010'and i.IdE=6
GROUP BY i.IdE,i.NomE,b.IdE,b.Fecha,b.MontoTR

Alguna sentencia o no sé que podria colocar para que me aparezca en un solo registro...

Gracias...


SALUDOS
Responder Con Cita