spero che qualcuno potrà autarmi...
ma se metto la query nel ciclo per crearla in modo dinamico, alla fine ho sempre un UNION in più...

$stringa= "show table status LIKE '%tbanno%'" ;
$tabelle=mysql_query("$stringa") or die("Impossibile eseguire la query $ciao
Errore:".mysql_error());
while ($rec_tabelle=mysql_fetch_array($tabelle))
{
$query ="(SELECT Cognome FROM $rec_tabelle[0] WHERE Cognome='$cognomedacercare') UNION
";

//$query = $rec_tabelle[0] . ",";
echo " $query";
}



il ciclo naturalmente continua fino a quando trova tabelle con quel nome.. ma alla fine mi stampa questo:

(SELECT Cognome FROM tbanno2000 WHERE Cognome='Rossi') UNION
(SELECT Cognome FROM tbanno2001 WHERE Cognome='Rossi') UNION
(SELECT Cognome FROM tbanno2002 WHERE Cognome='Rossi') UNION
(SELECT Cognome FROM tbanno2003 WHERE Cognome='Rossi') UNION
(SELECT Cognome FROM tbanno2007 WHERE Cognome='Rossi') UNION
(SELECT Cognome FROM tbanno2008 WHERE Cognome='Rossi') UNION
(SELECT Cognome FROM tbanno2010 WHERE Cognome='Rossi') UNION
(SELECT Cognome FROM tbanno2012 WHERE Cognome='Rossi') UNION
(SELECT Cognome FROM tbanno2013 WHERE Cognome='Rossi') UNION


come vedete l'union finale è in più..
mi date una mano... VVoVe: