se pueden unir dos select y mostrar toda esta informacion en la tabla?
Publicado por Rosman (13 intervenciones) el 21/05/2019 16:25:46
Buenas tardes, presento el siguiente problema, no he conseguido como hacer esta solicitud del cliente
Al momento de consultar comparativamente en la tabla busco que me muestre un SELECT en donde me traiga el nombre y apellido del usuario y el nombre y apellido del tecnico que acepto el caso, es decir, consulto a la misma tabla
para explicarlo un poco mejor, creo que lo mejor es hacerlo de este modo
nombre_cliente | apellido_cliente | nombre_tecnico | apellido_tecnico |
Luis | Moncada | Rodrigo | Lavado |
donde esta la primera relacion es en la tabla solicitud, que es donde el cliente guarda el problema que tiene con su equipo, en esta tabla (solicitud) se encuentra un campo llamado usuario_id que es quien ha hecho la solicitud (valga la redundancia)
cuando un tecnico toma el caso, se guarda en la tabla relacional, ahi guarda el id de la solicitud y el id del usuario con permiso de tecnico que acepto la solicitud. (tecnico_solicitud)
id | solicitud | tecnico |
1 | 2 | 1 |
si existiera manera de unir dos select y traerla en un registro me funcionaria lo que deseo hacer pero lo unico que encontre fue UNION (y UNION ALL) pero el unifica ambos campos de la tabla y no quiero eso, quiero que en un mismo registro me traiga los dos datos y entienda donde esta la diferencia en la consulta ya que al armar algo como esto no funciona:
SELECT users.name AS nombre_cliente, users.lastname AS apellido_cliente,users.name AS nombre_tecnico, users.lastname AS apellido_tecnico FROM tecnico_solicitud INNER JOIN users ON users.id = tecnico_solicitud.usuario_id INNER JOIN solicitud ON users.id = solicitud.users_id
NOTA: debo tener la tabla con el nivel de acceso asi, porque alguien que es tecnico puede pasar a ser cliente en cualquier momento, lo mas fiable es usar una misma tabla y modificar el campo a conveniencia
Al momento de consultar comparativamente en la tabla busco que me muestre un SELECT en donde me traiga el nombre y apellido del usuario y el nombre y apellido del tecnico que acepto el caso, es decir, consulto a la misma tabla
para explicarlo un poco mejor, creo que lo mejor es hacerlo de este modo
nombre_cliente | apellido_cliente | nombre_tecnico | apellido_tecnico |
Luis | Moncada | Rodrigo | Lavado |
donde esta la primera relacion es en la tabla solicitud, que es donde el cliente guarda el problema que tiene con su equipo, en esta tabla (solicitud) se encuentra un campo llamado usuario_id que es quien ha hecho la solicitud (valga la redundancia)
cuando un tecnico toma el caso, se guarda en la tabla relacional, ahi guarda el id de la solicitud y el id del usuario con permiso de tecnico que acepto la solicitud. (tecnico_solicitud)
id | solicitud | tecnico |
1 | 2 | 1 |
si existiera manera de unir dos select y traerla en un registro me funcionaria lo que deseo hacer pero lo unico que encontre fue UNION (y UNION ALL) pero el unifica ambos campos de la tabla y no quiero eso, quiero que en un mismo registro me traiga los dos datos y entienda donde esta la diferencia en la consulta ya que al armar algo como esto no funciona:
SELECT users.name AS nombre_cliente, users.lastname AS apellido_cliente,users.name AS nombre_tecnico, users.lastname AS apellido_tecnico FROM tecnico_solicitud INNER JOIN users ON users.id = tecnico_solicitud.usuario_id INNER JOIN solicitud ON users.id = solicitud.users_id
NOTA: debo tener la tabla con el nivel de acceso asi, porque alguien que es tecnico puede pasar a ser cliente en cualquier momento, lo mas fiable es usar una misma tabla y modificar el campo a conveniencia
Valora esta pregunta


0