Agrupar datos

Hola experto necesito de su ayuda urgente no se como puedo solucionar este problema tengo una tabla con estos código diagnostico, fecha, sexo, edad etc etc... Lo que necesito es agrupar de acuerdo al diagnostico y que me de totales por sexo y edad como en este ejemplo
Diagnostico Total Acumulado sexo edad
                                            M F <1 AÑO   entre 1 y 14 años
A 20 100 10 10 1 4
B 10 150 4 6 4 10
C 30 80 10 20 2 5
D                   5        100        3   2            3            1
select diagnosticoi, sum(iif(between(fecha,wini,wfin),1,0)) as total, ;
sum(iif(between(fecha,winiac,wfin),1,0)) as acumulado,sexo,anos ;
from analisis ;
where between(fecha,winiac,wfin) ;
group by diagnostico;
order by diagnostico;
into cursor xx
Nota: las variables wini, wifin, winiac son de los 3 text que tengo para poner fechas
wini = fecha de inicio ejemplo 20/10/2008
wfin = fecha final ejemplo 26/102008 con estas dos primeras fechas obtengo totales
winiac = a al fecha de inicio de año 01/01/08 con esta fecha y wfin obtengo acumulados gracias.
Ojala no se desordene mi ejemplo
Respuesta
1
Mm no entiendo bien lo de las fechas, pero si quieres que te de Totales por Sexo y Edad puedes, o bien agrupar por esos campos o utilizar más comandos [SUM(IIF())]. No logro imaginarme bien las tablas y el resultado que esperas pero supongo que podrías poner algo así:
SELECT ;
        Diagnosticoi, ;
        COUNT(.T.) as Total, ;
        Sexo, ;
        Anos ;
FROM ;
        Analisis ;
WHERE ;
        Fecha BETWEEN wini AND wfin ;
GROUP BY ;
        Diagnosticoi, ;
        Sexo, ;
        Anos ;
ORDER BY ;
        Diagnosticoi, ;
        Sexo, ;
        Anos ;
INTO CURSOR ;
        Totales
Después podrías hacer uno para los Acumulados cambiando solo el "WHERE", así me parece más adecuado, y si quieres después puedes juntar los dos Cursores en uno solo.
Si puedes, mándame la Esructura de la tabla de donde quieres extraer la información y también la estructura de como necesitas que quede tu Cursor, aunque sea sin datos, solo para darme un idea más clara. Trata de explicarme con más detalle de la situación..
Nota: No pude probar la consulta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas