顯示的行我有兩個表,即「類」 &「產品」如下:PHP如何從兩個表
categories
id | name
products
id | cat_id | name
CAT_ID產品中引用的類別表。
現在,我想要顯示頁面上所有產品的列表,這些列表還必須顯示產品所屬類別的名稱(而不是cat_id)。 我在PHP很新的,所以我做了以下的方法:
foreach($products as $product):
echo $product->id . $product->name;
echo getCategoryName($product->cat_id);
endforeach;
其明顯的數據庫調用來檢索對應的類別名稱等於產品的數量來顯示,而東西告訴我這一點都不好。
那麼,有沒有更好的方法來做到上述?也許通過使用SQL JOIN?
@kilZone,它是一樣的連接。只是一個不同的語法。 – Johan 2011-06-04 19:27:24
@KilZone,在這種情況下使用'LEFT JOIN'時,如果該類別不存在,會顯示什麼? – WebNovice 2011-06-04 19:28:08
它是否也包含像沒有與'cat_id'關聯的類別的東西?例如,當它從數據庫中刪除(通常你會通過外鍵強制執行)。另一種方式呢?無論如何,我會說**總是**使用明確的JOIN,因爲你有更多的控制權。 – KilZone 2011-06-04 19:32:05