2017-12-23 9 views
0

こんにちは私は連続するクエリを送信する2つのテーブルがあります。例えば2つのシーケンシャルSELECTテーブルのベストウェイ

、表A収率1,2,3 .. 次に、クエリ1,2,3の表Bにデータを探し..

にtableA

_____________________ 
| uid | rate | 
| 1 | 1  | 
| 1 | 2  | 
| 1 | 3  | 
| 2 | 4  | 

TABLEB

_________________________ 
| rate | text | 
| 1  | ONE  | 
| 2  | TWO  | 
| 3  | THREE | 
| 4  | FOUR | 

===

<?php 
    $sql = $con->query("SELECT * FROM tableA WHERE uid=1"); 
    $user = $sql->fetch_array(); 
    $ratings = $user['rate']; //1,2,3 

    $sql2 = $con->query("SELECT * FROM tableB WHERE rate IN('".$ratings."')"); 
    $text = $sql2->fetch_array(); 
    $results = $text['text']; //ONE, TWO, THREE 
?> 

どのようにするのが最善でしょうか?

+1

最良の方法は、レートフィールド合流説明SQLチュートリアルを読む –

+0

を持つ2つのテーブルを結合です。これはSQLプログラミングの基本です。 –

+0

その方法を適用する方法 – Barmar

答えて

1

あなたは、このクエリを使用することができます。

Select tableA.*,tableB.* 
from tableA 
join tableB on tableA.rate=tableB.rate 
where tableA.uid=1 
+0

私はそれを試しました。しかし、ECHOを作るときに何も現れません。何か間違っていますか? –

+0

im test 'echo $ results ['text'];'結果なし –

+0

@SigitPurnomoここで動作します:http://www.sqlfiddle.com/#!9/4e9150/1 – Barmar

関連する問題