sql >> Databáze >  >> RDS >> Mysql

Výčet tabulek použitých v dotazu mysql?

Ano, můžete získat informace o tabulkách a sloupcích, které jsou součástí výsledku dotazu. Toto se nazývá metadata sady výsledků .

Jediným řešením PHP pro metadata sady výsledků MySQL je použití rozšíření MySQLi a mysqli_stmt::result_metadata() funkce.

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

Pole odlišných tabulek použitých v dotazu budete muset sestavit sami pomocí smyčky přes pole.



  1. ORDER BY pro měnové hodnoty

  2. Získání maxima bez seskupování

  3. Jak mohu číst data ze šifrované databáze pomocí SQLiteAssetHelper?

  4. Žádné výsledky dotazu pro model [App\Products] Laravel