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

necesito realizar algunas consultas mysql

Estas en el tema de necesito realizar algunas consultas mysql en el foro de Bases de Datos General en Foros del Web. hola queria saber si alguien me podia ayudar tengo estas 3 tablas cientificos (pk (idcientifico),nomapel,dni) proyectos (pk(idproyectos),nombre,horas) asignados_a (fk(idcientifico),fk(idproyectos) y me piden mostrar lo siguiente ...
  #1 (permalink)  
Antiguo 29/09/2015, 11:31
 
Fecha de Ingreso: septiembre-2015
Mensajes: 2
Antigüedad: 8 años, 6 meses
Puntos: 0
necesito realizar algunas consultas mysql

hola queria saber si alguien me podia ayudar

tengo estas 3 tablas

cientificos (pk (idcientifico),nomapel,dni)
proyectos (pk(idproyectos),nombre,horas)
asignados_a (fk(idcientifico),fk(idproyectos)

y me piden mostrar lo siguiente

1)Obtener el DNI y el nombre de los científicos que se dedican a más de un proyecto y cuya dedicación media a cada proyecto sea superior a las 80 horas

2)Mostrar los proyectos a los cuales no se les asignó ningún científico.

3) Obtener el número de científicos asignado a cada proyecto.

alguna ayuda por favor
  #2 (permalink)  
Antiguo 29/09/2015, 11:40
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: necesito realizar algunas consultas mysql

Si es un trabajo práctico, te guiamos, pero no regalamos soluciones a pedido. Este no es el Rincón del Vago, y no le hacemos la tarea a nadie...

Si quieres, podemos guiarte, pero para eso tendrás que postear lo que intentaste.
__________________
¿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 29/09/2015, 14:03
 
Fecha de Ingreso: septiembre-2015
Mensajes: 2
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: necesito realizar algunas consultas mysql

ah perdon me falto eso
para la primera parte intente esto y no me saca bien la hora media me saca un numero invalido
1)
Código SQL:
Ver original
  1. SELECT nomapel,dni,nombre FROM cientificos
  2. INNER JOIN proyectos ON idcientifico=idproyecto AND (SUM(horas)/2) > 80;

y los otros 2 la verdad no se como preguntar si idcientifico no concuerde con idproyectos
para una comparacion o decir que cientificos no pertenece atraves de su id

y la 3 seria lo opuesto esa es la duda que tengo talvez me exprese mal

Última edición por gnzsoloyo; 29/09/2015 a las 14:33
  #4 (permalink)  
Antiguo 29/09/2015, 14:38
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: necesito realizar algunas consultas mysql

Por lo pronto, no puedes usar funciones agrupadas como SUM() en el FROM ni en el WHERE. Te dispararían un error de sintaxis. Solo puedes usarla como condición en un HAVING.
Por otro lado, no existe vinculo directo entre Científico y Proyecto. Los ID de ambas tablas son diferntes, y la relación esta dada por una tabla relacional (asignado_a), que no estás invocando:
Código SQL:
Ver original
  1. SELECT nomapel, dni, nombre
  2. FROM cientificos C
  3.     INNER JOIN asignado_a aa ON C.idcientifico = aa.idcientifico
  4.     INNER JOIN proyectos P AA.idproyecto  = ON P.idproyecto
  5. HAVING SUM(p.horas)/2) > 80;

Necesitas repasar mas un tutorial básico de SQL. Hay cosas que son de manual, como el caso de los JOIN.


Muéstrame un intento de los otros dos casos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: mysql, tabla
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 08:15.