MySQL - Realizar consulta tres tablas, una tabla contiene "opciones"

 
Vista:
sin imagen de perfil
Val: 3
Ha disminuido su posición en 36 puestos en MySQL (en relación al último mes)
Gráfica de MySQL

Realizar consulta tres tablas, una tabla contiene "opciones"

Publicado por elpelado (2 intervenciones) el 16/11/2017 16:31:59
Buenos dias como andan? Luego de estar buscando y leyendo mil cosas he decidido solicitar ayuda a uds.

Tengo tres tablas las cuales debo realizar consultas entre ellas (una tabla denominada prescriptions ,patient_data y la otra listo_options) el tema es que no se como lograr obtener la consulta que me devuelva todos los tatos correspondientes a la tabla patient_data con los datos que corresponden referentes a la tabla list_options en base a lo que esta cargado en la tabla prescriptions.

Por ejemplo tengo un paciente con sus datos que el medico le ha prescripto una pastilla la cual esta en blister de 6 y es toma via oral ciertos datos se almacenan en la tabla prescriptions. Entonces lo que quiero es obtener la consulta que contenga datos de la tabla patient_data y que me indique que medicamento le prescribio el doctor esto esta en la tabla prescriptions, si es pastilla, si es pomada, cantidad y la via de adminitracion, pero en la tabla prescriptions por ejemplo tengo un valor form 1 que seria un valor puntual en la tabla list_options el cual seria por ejemplo el valor "via de adminitracion"

Aqui adjunto el contenido de las tablas para que vean lo que me refiero y no logro realizar.


Tabla prescriptions
prescriptions

Tabla patient_data
patient_data

Tabla list_options
list_options


La consulta que estoy intentando realizar es:

select `prescriptions`.`drug` AS `Producto`,`prescriptions`.`start_date` AS `Fecha de Entrega del Producto`,`prescriptions`.`quantity` AS `Cantidad`,`prescriptions`.`refills` AS `Cantidad Entregada`,`prescriptions`.`note` AS `Nota` from (.`prescriptions` join `list_options`) where (`list_options`.`option_id` = `prescriptions`.`form`) group by `prescriptions`.`patient_id`

Logro obtener los datos de los pacientes pero no los datos valores que necesito de la tabla list_options en base a lo que tengo cargado en la tabla prescriptions.

Desde ya agradezco la ayuda.

Disculpen las molestias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Realizar consulta tres tablas, una tabla contiene "opciones"

Publicado por jorge (4 intervenciones) el 16/11/2017 17:01:05
No tiene cuando darte ese Query, pues las estructuras están mal creadas, porque no hay relación entre Prescriptions y List_Options, si bien ésta última cuenta con el enlace de Patient_Id, para saber a que paciente se refiere, no existe así la relación con List_Options, luego es imposible saber que tipo de administración le recetaron (Oral, Inyectable, etc).
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 3
Ha disminuido su posición en 36 puestos en MySQL (en relación al último mes)
Gráfica de MySQL

Realizar consulta tres tablas, una tabla contiene "opciones"

Publicado por elpelado (2 intervenciones) el 16/11/2017 17:05:37
Gracias por la respuesta Jorge, pero por ejemplo en la tabla prescriptions el campo form hace referencia al valor de la tabla list_options que seria tabletas (lo que a mi me serviria obtneer en la consulta)

Aclaro que soy re novato en esto y las tablas y este tema me lo asignaron a mi osea ya estaba creada las tablas etc.

Disculpa las molestias Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Realizar consulta tres tablas, una tabla contiene "opciones"

Publicado por jorge (4 intervenciones) el 16/11/2017 17:11:50
Pues has debido aclarar cuales son los enlaces, es una mala práctica llamarlos diferente, porque eso lleva a confusiones.

Siendo así puedes probar con: INNER JOIN list_options LE ON LE.list_id = PR.form

Donde PR es un alias para la estructura: Prescriptions
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad