Cita:
Iniciado por qvixote
Amigo, necesito que me ayuden. Tengo varias tablas que tienen los mismos campos y nombre similar, en las que quiero hacer una sola consulta que extraiga resultados de búsqueda de todas ellas al mismo tiempo.
Por ejemplo, las tablas son:
egresados2005
egresados2006
egresados2007
egresados2008
Y con una sola consulta, quiero obtener los campos `user_id`, `run` y `nombre` de los registros que cumplan la condición WHERE `codigo` > 7 en todas esas tablas.
¿Se puede hacer algo así o debo hacer una consulta para cada tabla?
hazlo con UNION ALL
Código sql:
Ver original(SELECT user_id, run, nombre, 'egresados2005' tabladesde FROM egresados2005 WHERE codigo > 7)
UNION ALL
(SELECT user_id, run, nombre, 'egresados2006' FROM egresados2006 WHERE codigo > 7)
UNION ALL
(SELECT user_id, run, nombre, 'egresados2007' FROM egresados2007 WHERE codigo > 7)
UNION ALL
(SELECT user_id, run, nombre, 'egresados2008' FROM egresados2008 WHERE codigo > 7)
ORDER BY nombre
He añadido como valor constante el nombre de la tabla, por si necesitas en la programación trabajar con él.