Hola DoHITB:
A ver si entendí, lo que quiere hacer es que si en la tabla usuarios2 no existe ningún elemento igual en la tabla usuarios entonces devolver el primer registro de la tabla usuarios... Si existe algún elemento de la tabla usuarios2 en la tabla usuarios, entonces devolver esos usuario correcto??? Creo que podrías hacerlo así:
Código MySQL:
Ver original+------+--------+
| id | nombre |
+------+--------+
| 1 | DAVID |
| 2 | OSCAR |
+------+--------+
+------+--------+
| id | nombre |
+------+--------+
| 1 | CARLOS |
+------+--------+
+--------+
| nombre |
+--------+
| DAVID |
+--------+
Supongamos ahora que en la tabla usuarios2 existe un elemento de la tabla usuarios:
Código MySQL:
Ver originalQuery OK, 1 row affected (0.04 sec)
+------+--------+
| id | nombre |
+------+--------+
| 1 | CARLOS |
| 2 | OSCAR |
+------+--------+
Si ejecutamos ahora la misma consulta nos debe regresar OSCAR (en lugar de DAVID, como en el primer caso)
Código MySQL:
Ver original+--------+
| nombre |
+--------+
| OSCAR |
+--------+
La idea de la UNION es que sólo una de las partes sea verdadera, es decir, si la primer consulta arroja resultados, entonces la segunda consulta no arroja ningún resultado y viceversa.
Igual y existe alguna otra forma más eficiente para hacer esta consulta, pues trabajar con sentencias IN y subconsultas puede ser terrible para el performance, pero acabo de llegar al trabajo y aun no me tomo mi café, así es que continuo algo dormido

y el lo primero que se me ocurrió. Si encuentro una manera mejor de hacerlo la publico.
Por lo pronto dale un vistazo y nos comentas.
Saludos
Leo.