你好,我有一個關於MySQL查詢的問題。mysql查詢where =值可能存在或不存在
以下查詢是我想要得到的結果。
但是,color_all
表中的一個thumb_file
列可能有數據,或者可能是NULL
。
$query = "SELECT DISTINCT(p.location), p.no, c.thumb_file FROM product_pics AS p, color_all AS c
WHERE style_number = '$style' AND p.color = c.color ORDER BY p.sort ASC";
其實,我可以讓這個查詢類似下面的查詢2:
$query = "SELECT DISTINCT(location), no, color FROM product_pics WHERE style_number = '$style' ORDER BY ASC";
$result = mysql_query($query);
while(list($loc, $no, $color) = mysql_fetch_array($result)){
$sub_query = "SELECT thumb_file FROM color_all WHERE color = '$color'";
}
但我只是想知道如何使這2個查詢爲一體。
這就是所謂的'左JOIN' – Simon
@Simon感謝您的回答,是有可能左連接時,一列有數據或爲空。 –
左連接將從LEFT(1st)表中取所有值,並將其連接到RIGHT(2nd)表並在第二個表中沒有數據的地方追加null – Simon