Ver Mensaje Individual
  #17 (permalink)  
Antiguo 16/11/2013, 02:11
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: 3 puntos de algebra relacional,consultas,having

ellandax,
vamos con el primer ejercicio y ve despacio:
Cita:
1. Mostrar los datos de los autos con más de 2 accidentes.
Pasos para preparar la consulta.
1) averiguar la matrícula de los vehículos que han sufrido más de dos accidentes y para ello solo te hace falta la tabla accidentes_vehiculos. Agrupas por matrícula y te traes las matrículas que han sufrido más de dos accidentes.
Código MySQL:
Ver original
  1. SELECT matricula
  2.  FROM accidentes_vehiculos
  3.    GROUP BY matricula
  4.     HAVING COUNT(*) > 2
2) traerte después los datos de todos esos vehiculos mediante un inner join con la tabla vehiculo relacionando por el campo matrícula (consulta y subconsulta). Hay que usar alias para la consulta sobre accidentes, lo que te permitirá relacionarla mediante INNER JOIN con la tabla vehiculo.
Código MySQL:
Ver original
  1. SELECT v.* FROM vehiculo v INNER JOIN
  2.    (SELECT matricula
  3.         FROM accidentes_vehiculos
  4.           GROUP BY matricula
  5.             HAVING COUNT(*) > 2)t1
  6. ON v.matricula = t1.matricula

Prueba y dinos si funciona; analiza cada consulta fijándote en qué buscas y en qué tabla puedes encontrar los datos relevantes para la misma, qué debes buscar primero y cómo, y poseriormente cómo traerte lo demás. Hazte primero esas preguntas.
Responde al segundo ejercicio por partes, preocupándote de lo que es más relevante para ello y dónde está.
Por cierto, revisa la redacción de las preguntas, pues esto
Cita:
entre las fechas 01/01/2000.
está mal, falta otra fecha para establecer el rango.
Sobre el promedio, busca la función de agregación pertinente, que la hay.
Y un consejo de alguien algo ajeno a este mundo como yo: prueba parte por parte para comprobar que los datos devueltos son los esperados en cada una de ellas.

Última edición por jurena; 16/11/2013 a las 02:24