@jeremiselxi estas arrastrando un problema de diseño, es mucho mas simple modificar las tablas que enloquecerte con las consultas.
Lo que debes hacer, es en la tabla usuarios, agregar un campo que sea "id_rrhh" de esta forma puedes saber a que recurso humano corresponde cada usuario.
Si un usuario puede corresponder a varios rrhh debes crear una tabla auxiliar llamada "usuario_rrhh" con los campos "usuario_id", "rrhh_id" y hacer la relación.
Lo que estas haciendo es sumamente ambiguo.
De todas formas, (ESTAS AVISADO DE QUE ESTO TE VA A TRAER PROBLEMAS A INMEDIATO, CORTO Y LARGO PLAZO), si insistes en inventar una relacion donde no la hay, las relaciones deben ser creadas en el FROM no en el WHERE.
En tu primer pregunta seria algo asi:
Código MySQL:
Ver original RRHH t1
ON (t1.Nombre_Completo
LIKE '%'+t2.Nombre
+'%' AND t1.Nombre_Completo
LIKE '%'+t2.Apellido
+'%')
Ahora bien, siguiendo ese criterio vamos a los updates:
Código MySQL:
Ver original RRHH t1
ON (t1.Nombre_Completo
LIKE '%'+t2.Nombre
+'%' AND t1.Nombre_Completo
LIKE '%'+t2.Apellido
+'%') SET t1.Id_app
= t2.Id_app
;
Asi se arman las relaciones, pero esta muy mal (o al menos deberia evitarse a menos que no halla otra forma) armar una relacion con operadores como LIKE en base a expreciones regulares ya que eso volvera muy lenta a la base de datos con un volumen de datos grandes.
Lo mejor es lo que te sugirio @gnzsoloyo, armar relaciones de FK explicitas.