Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/02/2012, 15:52
Avatar de Raziel_Ravenheart
Raziel_Ravenheart
 
Fecha de Ingreso: agosto-2011
Ubicación: Ibagué, Tolima
Mensajes: 192
Antigüedad: 13 años, 2 meses
Puntos: 37
Pregunta Duda sobre optimización de consulta

Buenos(as) días, tardes o noches:

Mi duda la baso en que llevo algún tiempo programando en php, y poco a poco me ha tocado ir retomando lo que sabía de sql, en este caso mysql, como es común.

Actualmente estamos desarrollando con un amigo una aplicación para el curso de webmaster que estamos realizando y como el lleva algo más de tiempo utilizando mysql, logra hacer algunas consultas que yo entiendo, pero que no estoy seguro de que se deban hacer así.

Yo se por que he leído muchos manuales que es preferible en muchos casos, hacer consultas en mysql, que calcular datos en el script, ya sea este php, asp, jsp, python, java, ruby... etc.

En este caso mi duda es con respecto a este tipo de consultas, ya que mi compañero solo desea realizarlas de ese modo y aunque de algún modo veo que tiene razón algo me dice que está fallando en estas... independientemente de las tablas, que se nombran, me gustaría saber si es mejor dividir estas consultas combinadas en otras menos complejas... como les digo hasta ahora estoy retomando mysql y la verdad mi experiencia no es mucha.. les dejo la consulta

Código SQL:
Ver original
  1. SELECT
  2.   datosDoc.apellido AS ape,
  3.   datosDoc.nombres AS nombre,
  4.   asignaturas.nombre AS asigna,
  5.   notas.nota,
  6.   notas.fallas AS falla,
  7.   grad_asig.horas AS INTENSIDAD
  8. FROM
  9.   datosDoc, asignaturas,
  10.   asigdocgra, grad_asig,
  11.   cursos, notas, estudiante
  12. WHERE
  13.   grad_asig.cursos_idcursos =  '357'
  14.   AND cursos.idcursos = grad_asig.cursos_idcursos
  15.   AND asignaturas.idasignatura = grad_asig.asignaturas_idasignatura
  16.   AND grad_asig.idgrad_asig = asigdocgra.grad_asig_idgrad_asig
  17.   AND datosDoc.documento = asigdocgra.datosDoc_documento
  18.   AND notas.estudiante_documento =  '14568997'
  19.   AND estudiante.documento = notas.estudiante_documento
  20.   AND notas.trimestre =  '1'
  21.   AND notas.cursos_idcursos =  '357'
  22.   AND cursos.idcursos = notas.cursos_idcursos
  23.   AND asignaturas.idasignatura = notas.asignaturas_idasignatura
  24.   AND notas.yeards='2011'
  25. ORDER BY valor

Es bueno realizar este tipo de consultas, se puede optimizar,.. las dejo así y le doy la razón a mi compañero?.. la verdad este tema todavía me confunde un poco...

Muchas gracias por su colaboración