sql >> データベース >  >> RDS >> Mysql

mysqlクエリで使用されるテーブルを列挙しますか?

    はい、クエリ結果の一部であるテーブルと列に関する情報を取得できます。これは結果セットのメタデータと呼ばれます 。

    MySQL結果セットメタデータの唯一のPHPソリューションは、MySQLi拡張機能と mysqli_stmt::result_metadata() 機能。

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

    フィールドをループして、クエリで使用される個別のテーブルの配列を自分で作成する必要があります。



    1. 範囲制約数値MySQL列:どのように?

    2. LIKEを使用したPDO検索データベース

    3. SpringBootアプリケーションでsshトンネルを介してリモートmysqlに接続する方法

    4. Operandを返すSQLクエリには1つの列が含まれている必要があります