2013-08-25 63 views
0

這是我第一次嘗試使用Inner Inner Joins,因爲我一直使用SELECTS到現在。 我想用2個表格一起使用INNER JOIN,但到目前爲止我還沒有運氣。Inner Join給空白頁

我的INNER JOIN查詢:

$viewsubcat=$cxn->prepare("SELECT `testdb`.`itemcat`.`CatID`,`testdb`.`itemcat`.`ItemCat`,`testdb`.`itemsubcat`.`ItemSubCat` 
    FROM `testdb`.`itemcat` 
    INNER JOIN `testdb`.`itemsubcat` 
    ON `testdb`.`itemcat`.`CatID`=`testdb`.`itemsubcat`.`ItemCat`"); 
    $viewsubcat->execute(); 
    while($getsubcat=$viewsubcat->fetch(PDO::FETCH_ASSOC)) 
    { 
     $cat=$getsubcat["`testdb`.`itemcat`.ItemCat`"]; 
     $subcat=$getsubcat["`testdb`.`itemsubcat`.`ItemSubCat`"]; 
     echo"$cat"; 
     echo"$subcat"; 
    } 

我得到了一個空白頁面,並從錯誤logs.I've沒有錯誤消息一直在努力現在近2個小時,仍然無法得到工作。

我的表:

+----------------------------------+ 
| CatID | BusinessID | ItemCat | 
------------------------------------ 
| 1 |  1  | Computers | 
------------------------------------ 
| 2 |  1  | Games | 
------------------------------------ 


+-----------------------------------------------+ 
| SubCatID | BusinessID | ItemCat | ItemSubCat | 
------------------------------------------------- 
|  4 |  1  | 1 | NoteBooks | 
------------------------------------------------- 
|  5 |  1  | 1 | Tablets | 
------------------------------------------------- 

編輯:結果與MYSQL(無PHP)

CATID ItemCat ItemSubCat

1  Computers NoteBooks 

1  Computers Tablets 

真的很感謝所有幫助我能得到

謝謝!

+0

也許沒有結果返回。內部連接檢查條件爲真的結果對。也許情況並非如此。 – Miquel

+0

如果你直接在MySQL中運行該查詢(不使用PHP),你會得到什麼? – leftclickben

+0

@Mihai如果我刪除$鏈接,我得到的是一個屏幕連接成功的話。查詢結果不顯示= X –

回答

0

嘗試:

$cat=$getsubcat["ItemCat"]; 
$subcat=$getsubcat["ItemSubCat"]; 
+0

它的工作原理!只是一個問題,我認爲一個內部連接假設將兩個表連接在一起並顯示出來。但是,通過回顯$ cat和$ subcat,我不是簡單地回顯選擇的字段。如果是這樣的話,我會不會更好地使用2個SELECT語句,然後在表中回顯它們? –

+0

在那個Join中,只是創建了那些不存在的字段,它們只是用於Mysql,現在你有一個數組(id => 1 ItemCat => blah ItemSubCat => blah)等等。 – Mihai