2017-10-12 32 views
-1

私は2つのデータベースを持っています。最初は10エントリ(6カラム)、2番目は100エントリ(3カラム)です。私がしたいのは、最初のデータベースの行を繰り返して、2番目のデータベースの各行を繰り返し処理した後です。第1のデータベースを反復処理しながら第2のデータベースを反復処理できますか?

私は

echo $db1->col1, $db2->col1, $db2->col4

しかし、最初を反復しながら、二デシベルを反復処理する方法がわからないようなものを印刷したいと思います。

+3

本当に2つのデータベースを意味しますか?または2つのテーブル? –

+1

'JOIN'操作はあなたが望むものです。あなたの質問からは分かりません。しかし、JOINは2つのテーブルのデータを結合する一般的な方法です。私はMark Ba​​kerと同意します。あなたが*データベース*と言うときはおそらく*テーブル*を意味します。データベースはフォルダのように、テーブルはフォルダのファイルとして考えてください。 –

+0

最初のデータベーステーブル$ db1のすべてのループに対して、$ db2行のすべての行をループすることを意味します。右? –

答えて

1

最初のデータベースは$ db1_results、2番目のデータベース結果は$ db2_resultsと考えてください。

必要なのは、第1データベースのすべてのループに対して、第2データベースのすべての行をループする必要があることです。

foreach($db1_results as $db1_result){ 
    /* Eg: db1 has 10 records and db2 has 1000 records. 
For every 1 iternation of $db1, you will loop 1000 records of your $db2 */ 
    foreach($db2_results as $db2_result){ 

    } 
} 
+0

ありがとうございました。 – Stev

0

あなたは次の操作を行うことができ、同じデータベースサーバー上にある場合:次のように達成することができ

SQLソリューション

SELECT * FROM table1,table2 

これが得られますtable1の各行とtable2の各行が結合された新しいテーブル

他のデータベース言語でもこれを行うことができると思います。

https://en.wikipedia.org/wiki/Join_(SQL)#Cross_join

+0

ありがとうございます。上記のforeachソリューションは私の問題を解決しました。 – Stev