Categorías: MySQL

Consultas Complejas En MySQL

Muchas veces es necesario realizar consultas entre 3 o mas tablas, esto se le conoce como Consultas Complejas En MySQL. Son complejas por el tipo de relaciones que unen el numero de tablas, no por su dificultad 😉 Para tal finalidad se usa la clausula , pero muchas veces es difícil adaptarse al concepto desde un principio, pero en lugar de usar esta clausula podemos usar la clausula Where y concatenar las tablas con el operador lógico AND.

 

Para tal ejemplo nos guiaremos del modelo físico de la base de datos, ya que asi sera mucho mas facil de saber los campos de las llaves primareas y foraneas, las cuales nos interesan para realizar este tipo de consultas 🙂

 

 

Como se puede apreciar en la anterior imagen se ve que hay 7 tablas, pero de las se usaran 4 para el ejemplo; lo que se pretende hacer, es mostrar las asignaturas matriculadas por un determinado estudiante, luego usaremos 5 tablas en la cual se mostrara no solo las materias de un solo estudiante, sino también las notas de esas asignaturas, interesante no?

 

Te invito a ver mi primera Video Guia, espero te sea de gran utilidad 😀

 

 

Si te ha gustado el post, compártelo, regala un like ó comenta 😉

WP Dev JaGonzalez

Hijo, esposo y padre de un hermoso niño. Amante de los animales, la tecnología, informática y programación. Si tienes alguna duda, inquietud, comentario o deseas comunicarte directamente conmigo, puedes enviarme un correo electrónico a admin@jagonzalez.org

Ver comentarios

  • Hola, en este caso estoy trabajando con 4 tablas con registros que superan los 100 000 cada una; para este caso se realiza sub consultas a otras 3 tablas, en este caso cual seria la recomendaciones para generar un tiempo de consulta mejor a lo esperado (3 minutos aprox por la consulta mencionada).

  • Hola, gracias por el tutorial, mira tengo un problema que me está costando resolver y pienso que es mas por la normalización de mi BD que por parte de PHP, tengo una tabla intermedia para relacionar IDs de mas de tres tablas.
    por ahora solo estoy enfocado en conseguir lo siguente:
    una lista de ÁREAS DE PROCESO de una empresa de acuerdo a un filtro llamado KOVS que vienen hacer características de calidad de cada área, por lo tanto un área puede tener mas de un KOV. el requerimiento es el siguiente, desean que muestre todas las areas de proceso en filas pero con el detalle que aquellas que forman parte del KOV se pinten( el TD background) de un color y aquellas que no de otro color, con esto entonces obtendré por cada kov todas las áreas de proceso aquellas que influyen en el de un color y los demás de otro color. algo así
    azul:influyen
    gris no influye
    area a( color azul) --> area b(color azul)---> area c(color gris)

    para esto yo tengo en una tabla los ids de los kov y id de área de proceso, pero solo quiero que por cada KOV me salga por única vez un área, no se como pueda hacer esa distinción de color.

  • tengo dos tablas t1(falla) allí están contenidos dos campos camp1 Desde, camp2 hasta, los dos contienen cod_Apoyo del la t2(apoyos) esta tabla contiene Cod_Apoyo y Nombre apoyo etc.

    necesito hacer una consulta y traer de la tabla apoyo en nombre
    hago esto
    "Inner join apoyo
    on falla.Cod_Apoyo_Desde and falla.Cod_Apoyo_Hasta = apoyo.Cod_Apoyo"

    y solo me trae el nombre de asociado a Cod_Apoyo_Hasta es decir el ultimo de los dos
    por favor ayuda lo antes posible
    Gracias gracias....

  • hola amigo necesito de tu ayuda igual estudio ing sistemas me dejaron hacer una pratica de usuario servidor pero no se como me podrias ayudar porfa gracias

Compartir
Publicado por
WP Dev JaGonzalez
Etiquetas: bases de datosmysql

Entradas recientes

iPhone Hackeado: Qué Hacer para Proteger tu Dispositivo y Asegurar tu Seguridad

¿Has notado aplicaciones desconocidas o un drenaje inesperado de la batería? Estos podrían ser indicios…

2 semanas hace

Cómo Restablecer un iPhone a su Estado de Fábrica

Saber cómo Restablecer un iPhone a su Estado de Fábrica es clave para solucionar problemas…

3 semanas hace

Motorola planea lanzar al menos dos nuevos teléfonos Moto G en septiembre

Motorola ha confirmado el lanzamiento de Moto G84 5G y Moto G54 5G en India,…

1 año hace

El equipo de WizardLM afirma que un modelo de IA de terceros les robó el trabajo

Recuerde WizardCoder, ¿el codificador de IA que cubrimos recientemente aquí en Windows Report? Nos jactamos…

1 año hace

Las fallas del complemento Jupiter X Core amenazaron a 172.000 sitios web con apropiaciones de cuentas

Los investigadores han descubierto numerosos fallos de seguridad en el complemento WordPress Jupiter X Core…

1 año hace

Consola portátil Xbox: aquí tienes todo lo que necesitas saber al respecto

Para solucionar problemas del sistema de PC con Windows, necesitará una herramienta dedicada Fortect es…

1 año hace