Bases de Datos - ¿Agrupar mostrando datos una sola vez? En sql

   
Vista:

¿Agrupar mostrando datos una sola vez? En sql

Publicado por ADILENE mafer-0113@hotmail.com (1 intervención) el 08/05/2013 22:19:08
Tengo una consulta que aparece así:

1
2
3
4
5
6
7
UO   Participante   CursoAprobados CursosIcumplidos
CS      Juan               3              2
CS      Perla              1              2
CS      MARÍA              1              4
RH      JOSÉ               1              2
DC      CARLOS             4              6
DC      ADILENE            2              0




Me gustaría que apareciera así:

1
2
3
4
5
6
7
UO Participante CursoAprobados CursosIcumplidos
CS    Juan            3               2
       Perla          1               2
       MARÍA          1               4
RH     JOSÉ           1               2
DC     CARLOS         4               6
       ADILENE        2               0



¿Como hago eso? o si de puede hacer vía programación, trabajo con vb y access
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
información
Otras secciones de LWP con contenido de Bases de Datos
- Cursos de Bases de Datos
- Temas de Bases de Datos
información
Cursos y Temas de Bases de Datos
- Sistemas de Información
- Bases de datos y tablas
- Transacciones en SQL Server

¿Agrupar mostrando datos una sola vez? En sql

Publicado por Alixandro florian_do@yahoo.com (18 intervenciones) el 14/05/2013 02:34:17
Hola Adeline, esto es sql basico, practicamente es los que se ve desde que uno se inica en el mundo de las BD. si utiliza oracle, en el sqlplus puedes diseñar reportes con la misma presentacion como si fuese grafico, incluso con rompimientos, saltos, numeracion de paginas, encabezados y titulos etc. es una tarea, puedes ver en la web hay muchos material al respoecto. Te doy un poco de luz para que no digas. haste el query (Select) sumando o contando los dos ultimos campos, cuando lo ejecute se presentara un error diciendo que debes agrupar, entonces modifica el query agrupando los campos restantes.

Ejemplo:

Error
Select UO Participante Count(CursoAprobados) CursoAprobados,
Count(CursosIcumplidos) CursosIcumplidos
From Nombre_Tabla
Where nombre_campo = valor_parametro
And mas condicines si las hay.

Bueno
Select UO, Participante, Count(CursoAprobados) CursoAprobados,
Count(CursosIcumplidos) CursosIcumplidos
From Nombre_Tabla
Where nombre_campo = valor_parametro
Group by UO, Participante


Error
Select UO Participante Sum(CursoAprobados) CursoAprobados,
Sum(CursosIcumplidos) CursosIcumplidos
From Nombre_Tabla
Where nombre_campo = valor_parametro
And mas condicines si las hay.

Bueno
Select UO Participante Sum(CursoAprobados) CursoAprobados,
Sum(CursosIcumplidos) CursosIcumplidos
From Nombre_Tabla
Where nombre_campo = valor_parametro
And mas condicines si las hay.
Group by UO, Participante

Espero te haya ayudado.

Sigue Leyendo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

¿Agrupar mostrando datos una sola vez? En sql

Publicado por Ignacio Esviza ignacio@esviza.com (2 intervenciones) el 14/05/2013 03:26:08
Adiline:

Si la consulta la querés pasar a un reporte:

1. Obtenés la consulta tal como la estás haciendo.
2. En el reporte buscá la opción "Hide duplicate values" en el agrupamiento por UO y marcalo. Access no va a mostrar los valores duplicados para UO dentro de un mismo grupo.

Si la consulta la estás usando para otra cosa:

1. Obtenés la consulta tal como la estás haciendo.
2. Debés aplicar algo de programación para tomar el primer valor de los grupos de UO, pero ignorarlo siempre que UO sea el mismo grupo.

Pseudocódigo:

uoAnterior = ' '
para cada fila
si uoAnterior <> fila.UO
mostrar fila.UO
uoAnterior = fila.UO
finsi
mostrar fila.participante
mostrar fila.cursoAprobados
mostrar fila.cursoIncumplidos
finpara

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar