Soy de la opinión de abulon: tus tablas son muy extrañas.
Cita: Tabla asalariado
-------------------------------------
asalariados.id_clientasm
asalariados.contrato
asalariados.nombre
asalariados.pdf
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
Tabla morales
-------------------------------------
morales.id_clientmor
morales.contrato
morales.nombre
morales.pdf
Lo lógico sería una tabla con todos los nombres:
Clientes
-----------------
clientes.id
clientes.nombre
clientes.apellidos
y luego, si fuera necesario, otra tabla:
Contratos
-----------------
Contratos.id
Contratos.contrato
Contratos.pdf
Contratos.idcliente
Contratos.tipo (aquí mediante un campo numérico pequeño podrías poner 0 para moral y 1 para asalariado).
Luego harías la consulta con un inner join entre las tablas clientes y contratos con el on clientes.id=contratos.idcliente
y la consulta sería algo así: SELECT clientes.nombre, clientes.apellidos, contratos.contrato, contratos.odf, IF(contrato = 0, 'moral', 'asalariado') tipo_contrato FROM clientes inner join contratos on clientes.id=contratos.idcliente WHERE clientes.apellidos LIKE 'Martínez Sanz' ORDER BY clientes.apellidos
No obstante, si quieres encontrar los nombres con la estructura que tienes (vuelvo a recomendarte el cambio a otra), deberías hacerlo así:
Cita: (SELECT asalariados.id_clientasm, asalariados.contrato, asalariados.nombre, asalariados.pdf from asalariados WHERE asalariados.nombre LIKE 'Martínez Sanz'
)
UNION ALL
(SELECT morales.id_clientmor, morales.contrato, morales.nombre, morales.pdf from morales WHERE morales.nombre LIKE 'Martínez Sanz'
)
ORDER BY asalariados.nombre
En mi opinión, estás duplicando información (el nombre) y haciendo un uso no muy correcto de una base relacional. Por eso te recomiendo que eches un vistazo a tutoriales sobre base de datos relacionales y sobre reglas de normalización.