¿Cómo puedo unir tablas usando el valor de columna?obtener la tabla unirse con el valor de columna
Tengo tres tablas que se enumeran a continuación:
messages_table
----------------------------------------------------------------------------- msg_id | msg_sub | msg_to | to_user_type | msg_from | from_user_type ----------------------------------------------------------------------------- 001 | test | 88 | manager | 42 | admin 002 | test2 | 88 | manager | 94 | manager
admin_table
-------------------------— admin_id | admin_name -------------------------— 001 | Super Admin
manager_table
--------------------------- manager_id | manager_name --------------------------- 88 | Mandela 94 | Kristen
¿Cómo puedo obtener la salida deseada como se muestra a continuación con consulta SQL. Es decir. tablas de unión con respecto a los valores de columna cuando se cumplen los siguientes criterios:
Si
user_type = admin
entonces debería unirse conadmin_table
.Si
user_type = manager
entonces debe unir conmanager_table
.
salida deseada:
-----------------------------------------------------
msg_id | msg_sub | msg_to_name | msg_from_name
-----------------------------------------------------
001 | test | Mandela | Super Admin
002 | test2 | Mandela | Kristen
es decir, Obtenga la consulta join de SQL basada en el valor de la columna.
EDIT:
quiero ir a buscar la consulta SQL no datafrom formar la codificación serverside.
yo probamos este consulta desde here, es decir, la idea de Winfred (contestados)
Sin embargo, no podía entenderlo.
msg_by_usertype
es la columna basada en que el valor manager
entonces se debe seleccionar manager_table
y si es admin el que admin_table
¿cuáles son las columnas que desea recuperar? –
Además, ¿cómo se relacionan las tablas entre sí? ejemplo, la tabla de mensajes y la tabla de administración? ¿cuál es su columna de enlace –
He editado la pregunta, por favor eche un vistazo. – Rafee