Foros del Web » Programando para Internet » PHP »

consulta en diferentes tablas en phpmyadmin

Estas en el tema de consulta en diferentes tablas en phpmyadmin en el foro de PHP en Foros del Web. Holaaa!! buenas noches!!! espero que alguien pueda echarme una manita con mi problema... verán, tengo 5 tablas: -USUARIOS :con los sig campos: idUsuario, Nombre, ApellidoPaterno, ...
  #1 (permalink)  
Antiguo 20/11/2012, 00:01
Avatar de AndreaEstrada  
Fecha de Ingreso: noviembre-2012
Ubicación: Torreón
Mensajes: 54
Antigüedad: 11 años, 4 meses
Puntos: 0
Exclamación consulta en diferentes tablas en phpmyadmin

Holaaa!! buenas noches!!!

espero que alguien pueda echarme una manita con mi problema...

verán, tengo 5 tablas:

-USUARIOS:con los sig campos: idUsuario, Nombre, ApellidoPaterno, ApellidoMaterno, idDominioSexo, CorreoElectronico, NombreUsuario, contraseña, idDominioAcceso

-DOCENTES: con los campos: idUsuario, idDocente, RFC, NoTarjeta

-MATERIAS: con los campos: idMateria, clave_materia, nombre_materia, creditos, unidades, horas_practica, horas_teoria, idDominioEspecialidad

-RIEEE_DOCENTE: con los campos: idDocenteRieee, idDocente, periodo, horas_nombramiento, horario_checada, horario_clases, telefono, celular, asignacion, formActivo

-RIEEE_MATERIAS: con los campos: idDocente, idMateria, tipo_materia, prioridad y periodo

quiero hacer una consulta en la cual en una sola fila de una tabla me aparezca lo siguiente:

NoTarjeta / Nombre-ApellidoPaterno-ApellidoMaterno / horas_nombramiento / horario_checada / horario_clases / telefono / celular / Materias Impartidas / Materias Nuevas / asignacion

(me explico, en materias impartidas y materias nuevas es en RIMATERIAS, se diferencian por el docente que las selecciono y el tipo.. que es I cuando es impartida y N cuando es nueva)

PUES BIEN, HICE LA SIGUIENTE CONSULTA, Y SI ME SALE CON LOS DATOS QUE REQUIERO, SOLO QUE ME SALEN VARIAS FILAS, YA QUE TOMA CADA MATERIA COMO INDEPENDIENTE, Y NO ME LAS PONE JUNTAS!... SI SE PUDIERA ME GUSTARIA QUE ESTUVIERAN TODAS LAS MATERIAS IMPARTIDAS POR ESE DOCENTE EN LA MISMA FILA SEPARADAS POR (,) ASI MISMO LAS MATERIAS NUEVAS... AQUI PONGO LA CONSULTA QUE HAGO, RECALCANDO LA PARTE QUE CREO QUE HAY QUE MODIFICAR....

Código PHP:
$sql mysql_query ("SELECT docentes.NoTarjeta, concat(usuarios.nombre,' ',usuarios.ApellidoPaterno,' ',usuarios.ApellidoMaterno)as nombrecompleto,
            rieee_docente.horas_nombramiento,rieee_docente.horario_checada,rieee_docente.horario_clases,rieee_docente.telefono,rieee_docente.celular,
            materias.nombre_materia,
            rieee_docente.asignacion
            FROM usuarios,docentes,materias,rieee_docente,rieee_materias
            WHERE usuarios.idUsuario = docentes.idUsuario
            AND docentes.idDocente = rieee_docente.idDocente
            AND docentes.idDocente = rieee_materias.idDocente
            AND rieee_docente.idDocente = rieee_materias.idDocente
            AND materias.idMateria = rieee_materias.idMateria
            AND rieee_docente.periodo = '$Periodo' ORDER BY NoTarjeta"
);   //consulta SQL

            //$result = mysql_query($sql); //variable que guarda la consulta y la conexion
            
$limit mysql_num_rows($sql); //Obtenngo el Total de Registros Afectados
            
            
if($limit==0)
            {
                echo 
'<script>window.location="buscaRepGeneral.php?act=1"</script>';
            }
            else
            {
                                
                echo 
" <h4>REGISTROS DE PLANEACIÓN EDUCATIVA DEL PERÍODO $meses </h4>";                
                echo 
"<table> \n";
                echo 
"<thead><tr> \n";
                echo 
"<th>No Tarjeta</th> \n";
                echo 
"<th>Catedrático</th> \n";
                echo 
"<th>Horas de Nombramiento</th> \n";
                echo 
"<th>Horario de Checada</th> \n";
                echo 
"<th>Horario de Clases</th> \n";
                echo 
"<th>Telefono</th> \n";
                echo 
"<th>Celular</th> \n";
                echo 
"<th>Materias Impartidas</th> \n";
                echo 
"<th>Materias Nuevas</th> \n";
                echo 
"<th>Criterio de Asignación</th> \n";
                echo 
"</tr></thead> \n";
                
                while (
$row mysql_fetch_row($sql))
                {
                    echo 
"<tr> \n";
                    echo 
"<td >$row[0]</td> \n"//NoTARJETA
                    
echo "<td >$row[1]</td> \n"//NOMBRE DEL PROFESOR
                    
echo "<td >$row[2]</td> \n"//HORAS DE NOMBRAMIENTO
                    
echo "<td >$row[3]</td> \n"//HORARIO CHECADA
                    
echo "<td>$row[4]</td> \n"//HORARIO CLASES
                    
echo "<td>$row[5]</td> \n"//TELEFONO
                    
echo "<td>$row[6]</td> \n"//CELULAR
                    
echo "<td>$row[7]</td> \n"//MATERIAS IMPARTIDAS
                    
echo "<td>$row[8]</td> \n"//MATERIAS NUEVAS
                    
echo "<td></td> \n"//CRITERIO DE ASIGNACION
                    
echo "</tr> \n";
                }
                echo 
"</table></center> \n";    
            } 

MUCHISIMAS GRACIAS!!! ESPERO QUE ME PUEDAN AYUDAR! GRACIAS POR SU TIEMPO :)
__________________
"La verdadera clave de la grandeza es ser en verdad lo que aparentamos ser" -Sócrates
  #2 (permalink)  
Antiguo 20/11/2012, 12:44
Avatar de DeivisAndres  
Fecha de Ingreso: febrero-2012
Ubicación: Colombia
Mensajes: 305
Antigüedad: 12 años, 1 mes
Puntos: 41
De acuerdo Respuesta: consulta en diferentes tablas en phpmyadmin

De lo que te entiendo es que quieres poner varios registros en un solo campo, mira para ver si te puede servir esta función "GROUP_CONCAT": GROUP_CONCAT y sobre todo este: GROUP_CONCAT useful GROUP BY extension .

Código Javascript:
Ver original
  1. SELECT docentes.NoTarjeta, concat(usuarios.nombre,' ',usuarios.ApellidoPaterno,' ',usuarios.ApellidoMaterno)as nombrecompleto, rieee_docente.horas_nombramiento,rieee_docente.horario_checada,rieee_docente.horario_clases,rieee_docente.telefono,rieee_docente.celular, GROUP_CONCAT(materias.nombre_materia) AS Materias Impartidas, rieee_docente.asignacion FROM usuarios,docentes,materias,rieee_docente,rieee_materias WHERE usuarios.idUsuario = docentes.idUsuario AND docentes.idDocente = rieee_docente.idDocente AND docentes.idDocente = rieee_materias.idDocente AND rieee_docente.idDocente = rieee_materias.idDocente AND materias.idMateria = rieee_materias.idMateria AND rieee_docente.periodo = '$Periodo' ORDER BY NoTarjeta

Última edición por DeivisAndres; 20/11/2012 a las 12:50
  #3 (permalink)  
Antiguo 20/11/2012, 12:58
Avatar de DeivisAndres  
Fecha de Ingreso: febrero-2012
Ubicación: Colombia
Mensajes: 305
Antigüedad: 12 años, 1 mes
Puntos: 41
Respuesta: consulta en diferentes tablas en phpmyadmin

Y si quieres mas ejemplos aqui te dejo estas dos paginas:

Concatenar dentro de la propia consulta en MySQL.
GROUP_CONCAT concatena varios campos en uno solo.
  #4 (permalink)  
Antiguo 20/11/2012, 13:05
 
Fecha de Ingreso: septiembre-2011
Mensajes: 16
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: consulta en diferentes tablas en phpmyadmin

Quisàs INNER JOIN te pueda facilitar algunas consultas.
http://dev.mysql.com/doc/refman/5.0/es/join.html

Aquí más gráfico
http://www.blogdephp.com/consulta-mysql-inner-join-para-unir-tablas-relacionadas/

Saludos,

Etiquetas: mysql, phpmyadmin, registro, sql, tabla, tablas, variables, usuarios
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:09.