PDA

Ver la Versión Completa : Como puedo...


Manuel
19-05-2003, 15:30:50
Hola amigos del foeo, que tal, me pedieron lo siguiente, realizar una estadistica con la información de una tabla que tiene la siguiente estructura:

Campo Tipo
----------------
Rut Float (Campo Clave)
curso Char 2
nivel Chart 10
Sexo Char 10

me piden lo siguiente:

Hombres y mujeres de cada curso (cantidad)
hombres y mujeres de cada nivel
etc.

lo que quiero yo es poderlo hacer hacer en una sola consulta de Sql, trabajo en delphi 5 con interbase 5.5, amigos gracias de antemano

guillotmarc
19-05-2003, 16:33:44
Hola.

Puedes utilizar subconsultas :


select curso,
(select count(T2.Rut)
from Tabla T2
where T2.Curso = T1.Curso and T2.Sexo = 'Hombre') as Hombres,
(select count(T2.Rut)
from Tabla T2
where T2.Curso = T1.Curso and T2.Sexo = 'Mujer') as Mujeres
from Tabla T1
group by curso


La otra consulta sería muy similar.

Saludos.

Aprendiz
19-05-2003, 18:18:04
También puedes utilizar consultas sencillas y unirlas con la cláusula UNION.

O siguiendo la idea de guillotmarc currarte dos consultas del tipo que el te indica y unirlas con el UNION de tal manera que de una sola ejecución tendrías todos los resultados.

Para diferenciarlo puedes hacer que te devuelva un literal:

SELECT 'POR CURSO',...

SELECT 'POR NIVEL',...

Saludos