Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Mysql (http://www.forosdelweb.com/f86/)
-   -   Varias tablas a la vez (http://www.forosdelweb.com/f86/varias-tablas-vez-583576/)

yonolose 06/05/2008 13:36

Varias tablas a la vez
 
¿Se podría hacer un mysql_query utilizando varias tablas?.
Me explico:

Yo quisiera hacer un random, pero el problema es que tengo varias tablas. Se podría hacer un

$result=mysql_query("SELECT * FROM AQUÍ VARIAS TABLAS ORDER BY rand() LIMIT 1");
$row = mysql_fetch_row($result);

echo "<hr />" . $row[1] . "<br />"; // Nombre
echo $row[2]; // Chiste

...Y donde pone AQUÍ VARIAS TABLAS, poner "X" tablas.

SUSMO 07/05/2008 01:10

Re: Varias tablas a la vez
 
Si, dentro de un mysql_query puedes ejecutar la query que quieras.

Saludos,

quimfv 07/05/2008 01:10

Re: Varias tablas a la vez
 
La estructura de campos de las tablas son iguales o similares? En ese caso se pueden unir con UNION ALL.

Select campo1, campo2 from tabla1
UNION ALL
Select campo1, campo2 from tabla2
UNION ALL
Select campo1, campo2 from tabla3
....
ORDER BY rand() LIMIT 1


Otro truco seria hacer un random sobre una tabla con los nombres de las tablas y una vez obtenido el nombre de la tabla hacer el random sobre esta. Esto funcionaria si el numero de registros de las tablas es similar, si hay mucha diferencia incrementaria las posibilidades de los registros de las tabla pequeñas...

Quim

yonolose 07/05/2008 07:13

Gracias :-)
 
GRACIAS, no tenía ni idea de eso de UNION ALL

:aplauso:


La zona horaria es GMT -6. Ahora son las 21:40.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.