Oui, vous pouvez obtenir des informations sur les tables et les colonnes qui font partie d'un résultat de requête. C'est ce qu'on appelle les métadonnées de l'ensemble de résultats .
La seule solution PHP pour les métadonnées de l'ensemble de résultats MySQL consiste à utiliser l'extension MySQLi et le mysqli_stmt::result_metadata()
fonction.
$stmt = $mysqli->prepare("SELECT * FROM db_people.people_facts pf
INNER JOIN db_system.connections sm ON sm.source_id = pf.object_id
INNER JOIN db_people.people p ON sm.target_id = p.object_id
ORDER BY pf.object_id DESC");
$meta = $stmt->result_metadata();
$field1 = $meta->fetch_field();
echo "Table for field " . $field1->name . " is " . $field1->table . "\n";
Vous devrez créer vous-même le tableau de tables distinctes utilisées dans la requête, en bouclant les champs.