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

[SOLUCIONADO] seleccionar datos de 3 tablas

Estas en el tema de seleccionar datos de 3 tablas en el foro de Mysql en Foros del Web. Hola amigos tengo q hacer una bd para un centro medico, tengo medico,especialidad y horario-de atencion. las claves(matricula(del medico),id_esp(especialidad),id_hora(horario) estas se tienen q guardar en ...
  #1 (permalink)  
Antiguo 14/02/2014, 12:09
 
Fecha de Ingreso: febrero-2014
Ubicación: la banda
Mensajes: 31
Antigüedad: 10 años, 2 meses
Puntos: 0
seleccionar datos de 3 tablas

Hola amigos tengo q hacer una bd para un centro medico, tengo medico,especialidad y horario-de atencion.
las claves(matricula(del medico),id_esp(especialidad),id_hora(horario) estas se tienen q guardar en una tabla que llame doctor-especialidad
lo que quiero es hacer un select para q me aparesca el nombre del medico y la especialidad q desarrolla, esta consulta son diferentes io quiero hacerlas alas dos en una....como ago!"#¡?¡?cuando lo ago me da error de sintaxis no estoy saviendo como ponerla

Código SQL:
Ver original
  1. SELECT doctor.nombremed FROM doctor INNER JOIN doctor_especialidad ON
  2. doctor_especialidad.matricula = doctor.matricula;

Código SQL:
Ver original
  1. SELECT especialidad.nombre_esp FROM especialidad INNER JOIN doctor_especialidad ON
  2. doctor_especialidad.id_espe = especialidad.id_espe;

Última edición por gnzsoloyo; 14/02/2014 a las 12:18
  #2 (permalink)  
Antiguo 14/02/2014, 12:19
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: seleccionar datos de 3 tablas

Cita:
cuando lo ago me da error de sintaxis no estoy saviendo como ponerla
Allí estás poniendo las dos por separado.
Muestrános cómo la intentas hacer con tres tablas, o no sabremos dónde estás errando.
__________________
¿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 14/02/2014, 17:02
 
Fecha de Ingreso: febrero-2014
Ubicación: la banda
Mensajes: 31
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: seleccionar datos de 3 tablas

Código SQL:
Ver original
  1. SELECT
  2. doctor.nombremed,
  3. especialidad.nombre_esp
  4. FROM doctor, especialidad
  5. INNER JOIN doctor_especialidad ON
  6. doctor_especialidad.matricula = doctor.matricula,
  7. doctor_especialidad.id_espe = especialidad.id_espe;

aqui esta donde intento unir las dos consultas para ver los datos, Es claro q esta mal en especial en esta parte
Código SQL:
Ver original
  1. doctor,especialidad INNER JOIN doctor_especialidad ON
  2. doctor_especialidad.matricula = doctor.matricula,doctor_especialidad.id_espe = especialidad.id_espe;

no creo q se separen por comas, por eso quiero consultarles

Última edición por gnzsoloyo; 14/02/2014 a las 17:41
  #4 (permalink)  
Antiguo 14/02/2014, 17:46
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: seleccionar datos de 3 tablas

Los errores son bastante básicos:
1) No mezcles JOINs implícitos (las comas) con los explícitos. Los resultados son impredecibles y pueden caer en error. Usa INNER JOIN.
2) No existen comas en el JOIN . JAMÁS. Para ninguna cosa. Consulta el manual de referencia antes de escribir una consulta con cláusulas que no conoces. Eso es lo que hacemos todos, incluyendo a los que trabajamos profesionalmente en el tema.
3) Usa alias en las tablas. Simplificará la sintaxis y la hará más legible.
Código SQL:
Ver original
  1. SELECT D.nombremed, E.nombre_esp
  2. FROM doctor D
  3.     INNER JOIN doctor_especialidad DE ON D.matricula, = DE.matricula
  4.     INNER JOIN especialidad  ON DE.id_espe = E.id_espe;
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 14/02/2014, 18:04
 
Fecha de Ingreso: febrero-2014
Ubicación: la banda
Mensajes: 31
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: seleccionar datos de 3 tablas

haa okay, voy a probar...claro ese era el problema osea no savia como iva si era comas,parentesis,and, as ese era el tema jeje

muchas gracias
  #6 (permalink)  
Antiguo 14/02/2014, 18:31
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: seleccionar datos de 3 tablas

Precisamente para eso está el manual de referencia: Sintaxis de JOIN
Aunque tengas veinte años en el rubro, sigues leyendolo...
__________________
¿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: join, select, tabla, tablas
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 14:24.