2017-10-04 13 views
0

複数のデータベースのmysqlテーブルの値を表示したいとします。1つのクエリを使用して複数のデータベーステーブルを選択する方法

私はこのようなコードを持っている:

$db1 = "SELECT * FROM db1 where no='1' "; 
$db2 = "SELECT * FROM db2 where no='1' "; 
$db3 = "SELECT * FROM db3 where no='1' ";  

をし、私はこのような1つのクエリを使用したい:私はそのようなもののクエリを使用するか、または任意のクエリにがある場合

$sql = mysqli_query($connect, $db1); 
while ($data = mysqli_fetch_array($sql))  
    { 
    bla bla bla...  
    } 

は、この可能です例3のデータベーステーブルを1つのクエリに入れますか?ありがとう。

+0

DB構造を確認する必要があります。 – FreedomPride

+0

いいえ、複数のテーブルからデータを取得することはできません。 – Tapas

+0

これらのテーブルは同じですか?選択の結果は「表形式」です。列と行があります。たとえば、table1にtable2と異なる列がある場合、どのようにそれらを結合したいですか?あなたが望むものは可能ですが、3つのテーブルをどのように組み合わせるかに関する情報を提供しない限り、それを行う方法を説明することはできません。それらが同じ列を持つ場合、mysqliがそれをサポートするならば、最も簡単な解決法は 'UNION ALL'です。 –

答えて

0

いいえ、1つのSQLクエリを使用して複数のテーブルからデータを取得することはできません。

しかし、mysqli_multi_queryを使用して複数のクエリを実行できます。

私はあなたが同じサーバーに三つの異なるデータベースを持っていると仮定していますhttps://www.w3schools.com/php/func_mysqli_multi_query.asp

+0

したがって、1つのクエリを使用してデータベースデータを表示するにはどうすればよいでしょうか? – woles010813

+0

https://www.w3schools.com/php/func_mysqli_multi_query.aspをチェックして、私の回答も更新しました。 :) – Tapas

0

を確認してください。あなたのケースでそう この場合、あなたは以下の形式でクエリを書くことができます Database.Schema.Table

$db1 = "SELECT * FROM Database.Schema.db1 where no='1' ";
$db2 = "SELECT * FROM Database.Schema.db2 where no='1' ";
$db3 = "SELECT * FROM Database.Schema.db3 where no='1' ";

希望、これはあなたが探しているものです!

+0

私はそれを得ることはありません。どのようにmysqli_queryその3データベースの選択に基づいて使用する? – woles010813

関連する問題