Búsqueda en varias tablas

El programa debe buscar dentro de varias tablas existentes en la base de datos (MDB) por nombre de personas.. Ya que en esa base de datos existen varias tablas que contienen generalmente estos tres campos... CampoNombre, CampoApellido, CampoNumeroIdentifiacion, etc, entonces quiero que en un formulario y de SQL realice una búsqueda en las tabla1, tabla2, tabla3, tabla4 de la base de datos.. Y tengo este consulta SQL pero no me funciona :
SELECT DISTINCTROW [Tabla1].[CAMPONOMBRE], [Tabla1].[CAmpoApellido], [Tabla1].[campoindentificacion] [TABLA2].[camponombre], [TABLA2].[campoAPELLIDO], [TABLA2].[campoidentificacion] INNER JOIN (TABLA2 INNER JOIN Tabla1 ON [TABLA2].[camponombre] =[Tabla1].[camponombre])
Ademas que posibilidad hay que en el MshFlexgrid me presente los CampoNOMbre de las tablas 1 y 2 en un mismo campo así como el apellido y el numero de identificación y al frente la tabla a la cual pertenece.. No se si es mucho pero viéndolo deben ser dos lineas de código sino que no la encuentro la manera porque soy nuevo en esto..
Respuesta
1
Para realizar la consulta que quieres debes usar la cláusula UNION de SQL. Para ello debes hacer:
SELECT camponombre,campoapellido,campoidentificacion FROM tabla1
UNION
SELECT camponombre,campoapellido,campoidentificacion FROM tabla2
Esto te une los campos de las dos tablas. Para poder identificar de que tabla te viene cada registro, creas un campo ficticio para identificar a la tabla, de la forma:
SELECT 'tabla1' AS idtabla,camponombre,campoapellido,campoidentificacion FROM tabla1
UNION
SELECT 'tabla2' AS idtabla,camponombre,campoapellido,campoidentificacion FROM tabla2
Con esto tienes un campo (idtabla) que te indica de qué tabla se ha obtenido cada registro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas