2015-05-13 55 views
1

所以我有一個數據庫這些表:有沒有辦法顯示與第三列的列關係?

魚(ID,f.name,圖像,cooking_type_id)

cooking_type(ID,姓名,縮略圖)

如果我顯示所有的列表魚類,我如何顯示type_id的正確縮略圖?

我遇到了麻煩找到正確的信息。現在我堅持使用此查詢:

$query = "SELECT `f.name`, `image`, `type_id` 
      FROM fish"; 

    $result = $mysqli->query($query); 
    $mysqli->set_charset("utf8"); 
    while($row = mysqli_fetch_array($result)){ 
     echo '<div class="row" style="background-color:#fff;">'; 

     echo '<div class="col-sm-2">'; 
     echo '<div class="listphoto">'; 
     echo $row['image']; 
     echo '</div></div>'; 

     echo '<div class="col-sm-2">'; 
     echo '<div class="listtext"><h3>'; 
     echo $row['f.name']; 
     echo '</a></h3></div></div>'; 

     echo '<div class="col-sm-2">'; 
     echo '<div class="typethumbnail">'; 
     echo ''; 
     echo '</div></div>'; 

回答

1

您想要此查詢。

SELECT f.name, f.image, c.thumbnail 
    FROM fish f 
    JOIN cooking_type c ON f.cooking_type_id = c.id 

您使用的ON子句中你JOIN操作來表達fish行如何涉及到cooking_type行。

如果您有多個表格,則可以使用一系列JOIN操作來關聯它們。例如:

SELECT f.name, f.image, c.thumbnail, m.market_name, m.price, p.pan_type 
    FROM fish f 
    JOIN cooking_type c ON f.cooking_type_id = c.id 
    JOIN fishmarket m ON f.name = m.species_name 
    JOIN pan p ON c.name = p.cooking_type_name 
+0

是否可以在1列以上使用JOIN?如果我有一張表,我想要顯示3個關係表? – MstrQKN

+1

是的。請參閱我的編輯。你應該研究JOIN操作;他們是數據庫系統的概念核心。 –

+0

哇!謝謝。我在你的第一個答案後閱讀了一些簡短的JOIN教程,但是這個簡短的評論爲我打開了一個全新的世界。我能以某種方式授予您這個答案嗎? – MstrQKN

相關問題