Mysql
 sql >> Database >  >> RDS >> Mysql

Recupera e modifica l'SQL utilizzato in una vista MySQL per la riesecuzione

Usalo per ottenere l'istruzione SQL utilizzata da View:

$viewSQL = "SELECT VIEW_DEFINITION FROM INFORMATION_SCHEMA.VIEWS 
WHERE TABLE_SCHEMA = 'myDatabase' AND TABLE_NAME = 'filter_tbl'";

$result = mysql_query($viewSQL);
$resultQuery = mysql_fetch_assoc($result);
$SqlUsedByView = $resultQuery['VIEW_DEFINITION'];
// Now alter the WHERE clause to your needs:
$MyNewSQL = str_ireplace( "WHERE ", "WHERE `lead_id`!=".$idval." AND " , $SqlUsedByView);

Nota Non so quale sia l'effettiva clausola WHERE della tua vista, quindi str_ireplace() sopra è solo un esempio di come potresti apportare la tua modifica.