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

Consultar Varias Tablas

Estas en el tema de Consultar Varias Tablas en el foro de Oracle en Foros del Web. Hola Amigos Del Foro... Toy Haciendo Una Aplicacion (PHP,ORACLE Y APACHE) Donde Tengo Que Analizar Varias Tablas Y No Se Como Hacer,, He Visto Algunos ...
  #1 (permalink)  
Antiguo 25/07/2006, 09:27
Avatar de rock_blues.NET  
Fecha de Ingreso: septiembre-2005
Mensajes: 207
Antigüedad: 18 años, 7 meses
Puntos: 0
Consultar Varias Tablas

Hola Amigos Del Foro...

Toy Haciendo Una Aplicacion (PHP,ORACLE Y APACHE) Donde Tengo Que Analizar Varias Tablas Y No Se Como Hacer,, He Visto Algunos Post Y Aun Asi No Consigo Dar Con La Solucion..
COMO TRABAJO EN LA TABLA ASIGNACION_ASIGNATURA, OBTENGO TODO DE AHI, EL RESULTADO DE LA CONSULTA DEBE MOSTRARME EL NOMBRE DEL PROFESOR Y LA ASIGNATURA QUE TIENE DICHO PROFESOR.(tablas abajo)


asignacion_asignatura(la Tabla Principal Sobre La Que Trabajo)
Id_asignacion_asignatura
Id_asignatura
Id_profesor
Id_insitucion
Id_sede
Id_seccion

profesor
Pro_id_profesor
Pro_nombre
Pro_apellido

asignatura
Id_asignatura
Nombre_asignatura

el problema basicamente es en la consulta para obtener los datos,no se como empezarla,nose si tengo que realizar un inner join o hay otra forma de analizar mas de 2 tablas...


ME PUEDEN AYUDAR.. PORFIS es super importante un respuesta a la brevedad
  #2 (permalink)  
Antiguo 25/07/2006, 09:31
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 21 años, 9 meses
Puntos: 0
select p.pro_nombre, p.pro_apellido, a.nombre_asignatura
from asignacion_asignatura as aa
inner join profesor as p on p.pro_id_profesor = aa.id_profesor
inner join asignatura as a on a.id_asignatura = aa.id_asignatura
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #3 (permalink)  
Antiguo 25/07/2006, 09:55
Avatar de rock_blues.NET  
Fecha de Ingreso: septiembre-2005
Mensajes: 207
Antigüedad: 18 años, 7 meses
Puntos: 0
me podrias explicar como llegaste a esa solucion(osea como armaste este codigo), porfa
no es bueno dar el plato listo para comer!!
  #4 (permalink)  
Antiguo 25/07/2006, 10:11
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 21 años, 9 meses
Puntos: 0
tienes una tabla de relacion llamada asignacion_asignatura esta contiene los id del profesor y de la asignatura, mediante esos id relacionas las tablas correspondientes, se realizo un inner join porque debes ser valores completos es decir, cada profesor con su ramo, aunque nose si puede pasar que un profesor no tenga asignatura asociada, para eso hubiesemos usado un left join.
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #5 (permalink)  
Antiguo 25/07/2006, 10:17
Avatar de rock_blues.NET  
Fecha de Ingreso: septiembre-2005
Mensajes: 207
Antigüedad: 18 años, 7 meses
Puntos: 0
grax bhonox
  #6 (permalink)  
Antiguo 25/07/2006, 16:58
Avatar de rock_blues.NET  
Fecha de Ingreso: septiembre-2005
Mensajes: 207
Antigüedad: 18 años, 7 meses
Puntos: 0
amigos realice lo que queria, aqui va el codigo por si le sirve a alguien:

$consulta="SELECT PROFESOR.PRO_NOMBRE,ASIGNATURA.NOMBRE,ASIGNACION_A SIGNATURA.ID_INSTITUCION,INSTITUCION.NOMBRE_INSTIT UCION FROM PROFESOR INNER JOIN ASIGNACION_ASIGNATURA ON (ASIGNACION_ASIGNATURA.ID_PROFESOR = PROFESOR.PRO_ID_PROFESOR) INNER JOIN ASIGNATURA ON (ASIGNACION_ASIGNATURA.ID_ASIGNATURA=ASIGNATURA.ID _ASIGNATURA) INNER JOIN INSTITUCION ON (INSTITUCION.ID_INSTITUCION=ASIGNACION_ASIGNATURA. ID_INSTITUCION) WHERE ASIGNACION_ASIGNATURA.ID_PROFESOR='".$id_profesor. "'";
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 16:19.