
Ayudar con un inner join varias tablas
Publicado por Jhon (2 intervenciones) el 20/12/2017 17:33:45
Buen dia !
Necesito ayuda para hacer una consulta de varias tablas, el problema es que el inner join que quiero hacer, las tablas consultadas traen el id (llave primaria) de otras tablas. Tengo las siguientes tablas:
MAQUINAS:
id_maquina
nombre
codigo
SERVICIOS:
id_servicio
id_maquina
codigo
numero_servicio
descripcion
TIPO_MANTENIMIENTO:
id_tipo_mantenimiento
tipo_mantenimiento
INFORME MANTENIMIENTO:
id_informe_mantenimiento
id_mantenimiento
fecha
hora_inicio
hora_fin
descripcion
id_usuario
MANTENIMIENTOS:
id_mantenimiento
id_tipo_mantenimiento
id_maquina
id_ servicio
unidad
fecha
estado
A la tabla que le estoy haciendo la consulta es a MANTENIMIENTOS, el código con el cual estoy haciendo la consulta es:
SELECT mantenimientos.id_mantenimiento, maquinas.nombre, tipo_mantenimiento.tipo_mantenimiento, servicios.codigo
FROM (((mantenimientos
INNER JOIN maquinas ON mantenimientos.id_maquina = maquinas.id_maquina)
INNER JOIN tipo_mantenimiento ON mantenimientos.id_tipo_mantenimiento = tipo_mantenimiento.id_tipo_mantenimiento)
INNER JOIN servicios ON mantenimientos.id_servicio = servicios.id_servicio);
al hacer esta misma consulta en la tabla INFORME MANTENIMIENTO solo me retorna los id's, lo que yo quisiera hacer (no se como explicarlo bien) es como un inner join dentro de un inner join, para poder que me retorne los datos de las otras tablas, quisiera obtener los siguientes datos haciendo la consulta a la tabla INFORME MANTENIMIENTO:
nombre de la maquina, el tipo de mantenimiento, el servicio de la maquina. O sea, consultar los datos de las otras tablas que tiene la tabla MANTENIMIENTOS. Es posible hacer eso?
Necesito ayuda para hacer una consulta de varias tablas, el problema es que el inner join que quiero hacer, las tablas consultadas traen el id (llave primaria) de otras tablas. Tengo las siguientes tablas:
MAQUINAS:
id_maquina
nombre
codigo
SERVICIOS:
id_servicio
id_maquina
codigo
numero_servicio
descripcion
TIPO_MANTENIMIENTO:
id_tipo_mantenimiento
tipo_mantenimiento
INFORME MANTENIMIENTO:
id_informe_mantenimiento
id_mantenimiento
fecha
hora_inicio
hora_fin
descripcion
id_usuario
MANTENIMIENTOS:
id_mantenimiento
id_tipo_mantenimiento
id_maquina
id_ servicio
unidad
fecha
estado
A la tabla que le estoy haciendo la consulta es a MANTENIMIENTOS, el código con el cual estoy haciendo la consulta es:
SELECT mantenimientos.id_mantenimiento, maquinas.nombre, tipo_mantenimiento.tipo_mantenimiento, servicios.codigo
FROM (((mantenimientos
INNER JOIN maquinas ON mantenimientos.id_maquina = maquinas.id_maquina)
INNER JOIN tipo_mantenimiento ON mantenimientos.id_tipo_mantenimiento = tipo_mantenimiento.id_tipo_mantenimiento)
INNER JOIN servicios ON mantenimientos.id_servicio = servicios.id_servicio);
al hacer esta misma consulta en la tabla INFORME MANTENIMIENTO solo me retorna los id's, lo que yo quisiera hacer (no se como explicarlo bien) es como un inner join dentro de un inner join, para poder que me retorne los datos de las otras tablas, quisiera obtener los siguientes datos haciendo la consulta a la tabla INFORME MANTENIMIENTO:
nombre de la maquina, el tipo de mantenimiento, el servicio de la maquina. O sea, consultar los datos de las otras tablas que tiene la tabla MANTENIMIENTOS. Es posible hacer eso?
Valora esta pregunta


0