2016-04-06 19 views
-1

私は2つのテーブルを持っています。他のテーブルで一致する行の行を選択する方法

First tabel called:(data): 
---------------------------------------- 
id link number isik status 
---------------------------------------- 
1 /link 78788  56677  55 

Second table called:(test) 
---------------------------------------- 
id  kood  status 
---------------------------------------- 
1  56677  111 

二つのテーブルで唯一の同じようなことは、私は最初のテーブルからすべての行を取得できますかisikとKoodの

isik(First table) = kood(Second table)ですか?

$conn = new mysqli($servername, $username, $password, $dbname); 

if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

$sql = "SELECT data * FROM data INNER JOIN test ON data.isik = test.kood"; 
$result = $conn->query($sql); 

if ($result->num_rows > 0) { 

    while($row = $result->fetch_assoc()) { 
     echo "Numb: " . $row["number"]. " - Name: " . $row["isik"]. " " . $row["link"]. "<br>"; 
    } 
} else { 
    echo "0 results"; 
} 
$conn->close(); 
?> 

しかし、イムは0結果

+0

私は内輪とダブル問い合わせ –

+0

それは 'SELECTデータでなければなりません。*'、 'ないSELECTデータ*'を試してみました。 –

答えて

0

あなたが一緒に内部結合使ってテーブルを結合し、最初のテーブルからの行のみを選択することができますを取得。これにより、2番目のテーブルの値がisikに一致する行のみが選択されます。

SELECT `data`.* FROM `data` INNER JOIN `test` ON `data`.`isik` = `test`.`kood` 
+0

これは0の結果を与えます。 –

+0

@ Gunarvesあなたは答えを受け入れたことに気付きました。それを 'data。* 'に変更して問題を解決しましたか? –

0
SELECT * 
FROM First a 
WHERE EXISTS (SELECT 1 
      FROM Second b 
      WHERE a.isik = b.isik);