Comunidad de diseño web y desarrollo en internet online

Ayuda Mysql+consulta

Citar            
MensajeEscrito el 17 Oct 2006 09:55 pm
Miren cheken esta imagen:
son dos tablas bueno deseo hacer una consulta para q me devuelva el promedio de las notas de la unidad 1 de cada alumno con sus respectivos nombres ,como puedo hacer lo he pensando todo el dia y no me sale :( ayuda porfa

Por juan_gv

108 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Oct 2006 12:23 am
no veo tus tablas, pero para obtener el promedio puedes utiliar el avg

SELECT Avg(Notas) AS Promedio FROM Cal WHERE Unidad = 1

Espero esto te ayude un poco...

Por Sr. QUHO

SWAT Team

1643 de clabLevel

5 tutoriales
1 articulo

  SWAT

firefox
Citar            
MensajeEscrito el 18 Oct 2006 01:19 am

Por juan_gv

108 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Oct 2006 10:14 am

Código :

select avg(n1) from SE_MATRICULA where dni_a='dni'
suponiendo que n1 sea la primera unidad in en dni pondriamos el dni del alumno en cuestion (si quisieras consultarlo por nombre deberias enlazar con la otra talba.... espero que te sirva

Por Yranac

421 de clabLevel



Genero:Masculino  

Lugo, Galicia

firefox
Citar            
MensajeEscrito el 18 Oct 2006 02:13 pm
El diseño de la base de datos no esta normalizada, redunda muchos datos. Por lo que la consulta que quieres hacer es más dificil de lo que debería.

¿Y para que usas relleno de ceros?

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 18 Oct 2006 02:19 pm
si lo normalize amigo, que datos redunda?,

Por juan_gv

108 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Oct 2006 03:25 pm
No entiendo esos 2 dni, ademas puede utilizar uno de ellos como clave primaria, para la consulta de 2 tablas, debes utilizar el inner join

Por Max

Claber

267 de clabLevel



Genero:Masculino  

Lima - Peru

firefox
Citar            
MensajeEscrito el 18 Oct 2006 05:28 pm
Aqui te dejo una consulta:

Código :

SELECT nombre_a, curso, ((N1 + N2 + N3 + N4) /4) AS Prom
FROM `alumno` LEFT JOIN `se_matricula` USING ( dni_a )


No tengo mucho tiempo, pero revisa el diseño de la bd... por lo rapido curso debe ser una tabla.

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 20 Oct 2006 02:38 am

Por juan_gv

108 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Oct 2006 02:50 am
Mmm... Yo no utilizaría como clave primaria el nombre del curso, le crearía un id.

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 20 Oct 2006 04:37 am
pork q ? los nonmbres de curso no se repetiran, mira maso menos asi deseeo una consulkta pero no me sale :( SELECT SUM(n1) FROM se_matricula,alumno WHERE grado='$grado_a' AND seccion='$seccion_a' AND nivel='$nivel_a' AND alumno.dni_a =(SELECT dni_a FROM se_matricula)

Por juan_gv

108 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Oct 2006 05:06 am

Maikel escribió:

Mmm... Yo no utilizaría como clave primaria el nombre del curso, le crearía un id.

saludos
Completamente de acuerdo.

Por Pedro

BOFH

3017 de clabLevel

3 tutoriales
6 articulos

  Bastard Operators From Hell

Honduras

firefox
Citar            
MensajeEscrito el 20 Oct 2006 05:15 am
me podrian decir porfavor cual seria la diferencia ?

Por juan_gv

108 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Oct 2006 05:23 am

Código :

SELECT nombre_a, AVG(n1) AS promedio FROM `se_matricula` AS Mat LEFT JOIN `alumno` USING ( dni_a )
WHERE grado = 'primer'   AND seccion = 'A' AND nivel = 'primaria'
GROUP BY Mat.dni_a

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 20 Oct 2006 05:51 am
yeaa, muchas graxxx ... si deseas me podrias dar una explicadita porfa de por ejm de LEFT JOIN `alumno` USING ( dni_a )

Por juan_gv

108 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Oct 2006 05:58 am
LEFT JOIN para intersecciones
http://dev.mysql.com/doc/refman/4.1/en/left-join-optimization.html

USING (fieldName) => ON Table1.fieldName = Table2.fieldName

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.