Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

[SOLUCIONADO] Reporte usando GoupBy

Estas en el tema de Reporte usando GoupBy en el foro de SQL Server en Foros del Web. Buenas con todos, tenga un problema al hacer un reporte, me explico: Tengo una tabla llamada Curricular, la cual tiene códigos de otras 4 tablas; ...
  #1 (permalink)  
Antiguo 23/07/2013, 01:47
Avatar de jean2510  
Fecha de Ingreso: diciembre-2011
Mensajes: 9
Antigüedad: 12 años, 4 meses
Puntos: 0
Pregunta Reporte usando GoupBy

Buenas con todos, tenga un problema al hacer un reporte, me explico:

Tengo una tabla llamada Curricular, la cual tiene códigos de otras 4 tablas; les dejo el diagrama :




La cuestión es que al hacer la siguiente consulta T-SQL

Código SQL:
Ver original
  1. SELECT  Codigo_Curricula,Codigo_Idioma, Codigo_Modalidad, Codigo_Nivel
  2.     FROM Curricula
  3.     GROUP BY  Codigo_Curricula, Codigo_Idioma, Codigo_Modalidad, Codigo_Nivel
  4.     ORDER BY Codigo_Curricula

me muestra esto:



y lo que necesito me muestre es algo como esto:




Una forma seria quitan el "Codigo_Curricula" del group by pero me da error :

Cita:
Mens. 8120, Nivel 16, Estado 1, Línea 1
La columna 'Curricula.Codigo_Curricula' de la lista de selección no es válida, porque no está contenida en una función de agregado ni en la cláusula GROUP BY.
y ese código necesito este siempre, dado que con el consulto todos los ciclos asociados a esa curricula en el evento click en la aplicación.

Gracias por la ayuda.

Última edición por gnzsoloyo; 23/07/2013 a las 04:34 Razón: :P size y mal etiquetado.
  #2 (permalink)  
Antiguo 23/07/2013, 04:37
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Reporte usando GoupBy

Probemos:
Código SQL:
Ver original
  1. SELECT  MIN(Codigo_Curricula) Codigo_Curricula, Codigo_Idioma, Codigo_Modalidad, Codigo_Nivel
  2.     FROM Curricula
  3.     GROUP BY  Codigo_Curricula, Codigo_Idioma, Codigo_Modalidad, Codigo_Nivel
  4.     ORDER BY Codigo_Curricula
Te recomiendo leer las restricciones al uso de GROUP BY en SQL Server. Las encontrarás en MSDN.
No te olvides que ciertos comportamientos varían de DBMS en DBMS. La consulta como la escribiste es correcta pars MySQL, peor no para Oracle o SQL Server.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 23/07/2013, 20:57
Avatar de jean2510  
Fecha de Ingreso: diciembre-2011
Mensajes: 9
Antigüedad: 12 años, 4 meses
Puntos: 0
De acuerdo Respuesta: Reporte usando GoupBy

Gracias ya logre la consulta, quedo asi :

Código:
SELECT  MIN(Codigo_Curricula) AS Curricula,Codigo_Idioma, Codigo_Modalidad, Codigo_Nivel 
FROM Curricula 
GROUP BY  Codigo_Idioma, Codigo_Modalidad, Codigo_Nivel 
ORDER BY Curricula
y muestra lo que quería



Gracias!

Etiquetas: sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:34.