sql >> Base de Datos >  >> RDS >> Mysql

formas fáciles de seleccionar filas de todas las tablas

Si todas las tablas tienen la misma estructura, puede usar un UNION consulta para devolver filas de las tres tablas a la vez:

$check = mysqli_query($con, "SELECT * FROM text WHERE keyword='$string'
                             UNION
                             SELECT * FROM sticker WHERE keyword='$string'
                             UNION
                             SELECT * FROM image WHERE keyword='$string'");

Esto le dará el conjunto equivalente de filas que le dan sus tres consultas existentes. Tenga en cuenta que no habrá forma de determinar de qué tabla proviene una fila determinada, por lo que es posible que desee agregar un campo adicional para indicar que, por ejemplo,

$check = mysqli_query($con, "SELECT *, 'text' AS src FROM text WHERE keyword='$string'
                             UNION
                             SELECT *, 'sticker' AS src FROM sticker WHERE keyword='$string'
                             UNION
                             SELECT *, 'image' AS src FROM image WHERE keyword='$string'");