Debe ser para uds. algo totalmente trivial, pero la verdad es que para mi no =D
Sucede que tengo 6 tablas, Alum_Datos, Alum_Direc, Alum_Tutor, Catalogo_Carrera, Catalogo_Estados, Catalogo_Municipio, con datos de mis alumnos. Lo que necesito es consultar de acuerdo a su matricula, eso ya lo tengo, lo que me viene trabando las ideas es como sustituir la clave foranea del Estado, Municipio y Carrera en la consulta.
La consulta mostrandome los datos es esta, y funciona bien:
Código:
Lo que necesito es sustituir el Id_Municipio, Id_Estado e Id_Carrera por el nombre respectivo, lo que también me produce problema es que el Id_Municipio e Id_Estado también lo uso para la tabla Alum_Tutor.SELECT a.Alum_AP,a.Alum_AM,a.Alum_Nombre, d.Alum_Calle,d.Alum_No, d.Alum_Colonia, d.Alum_CP, d.Id_Municipio, d.Id_Estado, d.Alum_Pais, a.Alum_Tel_Casa, a.Alum_Tel_Cel, a.Alum_Fecha_Nac, a.Alum_Lugar_Nac, a.Alum_Sexo, a.Alum_No_Solicitud,a.Alum_Puntaje_obt, a.Id_Carrera, t.Tutor_AP, t.Tutor_AM, t.Tutor_Nombre, t.Tutor_Calle, t.Tutor_Numero, t.Tutor_Colonia, t.Id_Municipio, t.Id_Estado, t.Tutor_Tel_Casa, t.Tutor_Tel_Cel FROM alumno_datos a, alumno_direc d, alumno_tutor t WHERE a.Id_Alumno = '20T107557' and d.Id_Alumno = a.Id_Alumno and t.Id_Alumno = a.Id_Alumno;
Código:
Me marca error en el primer LEFT JOIN, y según mis ideas locas es porque ando comparando cosas que no debo como el Id_Municipio con el nombre.. la duda es, ¿Entonces como lo establezco?SELECT a.Alum_AP,a.Alum_AM,a.Alum_Nombre, d.Alum_Calle,d.Alum_No, d.Alum_Colonia, d.Alum_CP, cm1.Nombre_Municipio, cm2.Nombre_Estado, d.Alum_Pais, a.Alum_Tel_Casa, a.Alum_Tel_Cel, a.Alum_Fecha_Nac, a.Alum_Lugar_Nac, a.Alum_Sexo, a.Alum_No_Solicitud,a.Alum_Puntaje_obt, cm5.Carrera_Nombre, t.Tutor_AP, t.Tutor_AM, t.Tutor_Nombre, t.Tutor_Calle, t.Tutor_Numero, t.Tutor_Colonia, cm4.Nombre_Municipio, cm3.Nombre_Estado, t.Tutor_Tel_Casa, t.Tutor_Tel_Cel FROM alumno_datos a, alumno_direc d, alumno_tutor t LEFT JOIN catalogo_municipio AS cm1 ON d.Id_Municipio = cm1.Nombre_Municipio LEFT JOIN catalogo_estados AS cm2 ON d.Id_Estado = cm2.Nombre_Estado LEFT JOIN catalogo_estados AS cm3 ON t.Id_Estado = cm3.Nombre_Estado LEFT JOIN catalogo_municipio AS cm4 ON t.Id_Municipio = cm4.Nombre_Municipio LEFT JOIN catalogo_carrera AS cm5 ON a.Id_Carrera = cm5.Carrera_Nombre WHERE a.Id_Alumno = '20T107557' and d.Id_Alumno = a.Id_Alumno and t.Id_Alumno = a.Id_Alumno;
De antemano mil gracias!! ^^
Espero haberme explicado..