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

modi semplici per selezionare le righe da tutte le tabelle

Se tutte le tabelle hanno la stessa struttura, puoi usare un UNION query per restituire righe da tutte e tre le tabelle contemporaneamente:

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

Questo ti darà l'equivalente insieme di righe che ti danno le tue tre query esistenti. Tieni presente che non ci sarà modo di determinare da quale tabella provenga una determinata riga, quindi potresti voler aggiungere un campo aggiuntivo per indicarlo, ad es.

$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'");