1
我正在使用PHP和MySQL創建並列出成員目錄。我有三張桌子 - 公司,聯繫人和分支。公司有聯繫人,有些但不是所有公司都有分支機構,也有聯繫人。我使用LEFT JOIN我先查詢到接觸的人連接到他們各自的公司,並將結果加載到一個數組,該作品使用下面的代碼:如何在新的選擇查詢中使用存儲陣列中的鍵值
// Retrieve all the data from the "company" table
$query = "SELECT * FROM company LEFT JOIN contact ON company.company_id = contact.company_id WHERE comp_county = 'BERNALILLO' ORDER BY company.comp_name, contact.cont_rank";
$result = mysql_query($query)
or die(mysql_error());
// Build the $company_array
$company_array = array();
while($row = mysql_fetch_assoc($result)) {
$company_array[] = $row;
}
現在我試圖找出如何運行第二個查詢,它需要從我的分支表中選擇company_id與存儲在我上面的數組中的company_id匹配的所有分支:$ company_array。然後我想將第二個查詢的結果存儲到名爲$ branch_array的第二個數組中。我試過這個:
// Retrieve all the matching data from the "branch" table
foreach($company_array as $row) {
$query2 = "SELECT * FROM branch LEFT JOIN contact ON branch.branch_id = contact.branch_id WHERE branch.company_id = '".$row['company_id']."' ORDER BY branch.br_name, contact.cont_rank";
$result2 = mysql_query($query2)
or die(mysql_error());
}
// Build the $branch_array
$branch_array = array();
while($row2 = mysql_fetch_assoc($result2)) {
$branch_array[] = $row2;
}
但是,這似乎並沒有工作......任何人都可以給我一個如何做到這一點的例子嗎?該查詢需要運行,以便它檢查我的$ company_array中的每個不同的company_id以查找分支表中的匹配項 - 希望問題有意義。謝謝。