我拉一個目錄的主列表和循環,然後嵌套在循環內我拉一組符合每個目錄的筆記。MySQL嵌套表選擇 - 不顯示如果外表不匹配內表
在下面的示例中,我將如何顯示dir 3和dir 4列表?這些代表類別的標誌,如果結果爲空,我不希望這些標誌出現。我讀了INNER JOIN,但它似乎並不符合這種需求,或者至少我不明白。
爲了簡化帖子,我淘汰了很多html表格和結構。這個想法是,外層循環運行所有的目錄,但我不能真正檢查內部(我知道)是否應該列出。我會通過非常有用的海報閱讀下面發佈的LEFT JOIN選項。
$sql_dir="SELECT dirid FROM lit_directories";
$result_dir=mysql_query($sql_dir);
while ($row_dir=mysql_fetch_assoc($result_dir)) {
edit here--> echo $row_dir['dirid'];
$sql_notes="SELECT notes, dirid FROM lit_notes WHERE dirid='".$row_dir['dirid']."'";
$result_notes=mysql_query($sql_notes);
while ($row_notes=mysql_fetch_assoc($result_notes)) {
echo $row_notes['notes'];
}
}
dirid notes
-----------------------
| dir 1 | notes 1
| | notes 2
| | notes 3
-----------------------
| dir 2 | notes 1
| | notes 2
-----------------------
| dir 3 | <---- I don't want these last 2 dir lists to show
| | since they are empty
-----------------------
| dir 4 | <----
| |
-----------------------
提示:'LEFT JOIN' – Raptor 2013-03-05 10:03:53
備註3&4 NULL或空字符串? – 2013-03-05 18:00:54