1
給查詢:SQL更改查詢,以顯示孤兒
SELECT
tblProducts.ID, tblProducts.views, tblProducts.productName, tblProducts.isForSale, tblProducts.isLimitedStock, tblProducts.stockCount, tblProducts.description, tblProducts.weightKG, tblProducts.basePrice, tblProducts.dateCreated, tblProductCats.catName,
(SELECT COUNT(*) FROM tblProductPrices WHERE productId = tblproducts.id) AS priceMods,
(SELECT COUNT(*) FROM tblcomments WHERE productId = tblproducts.ID) AS comments,
(SELECT COUNT(*) FROM tblProductImages WHERE productID = tblproducts.id) AS imageCount
FROM
tblProducts
INNER JOIN
tblProductCats ON tblProducts.categoryID = tblProductCats.ID
如果該產品的類別ID爲0 (tblProducts INNER JOIN tblProductCats ON tblProducts.categoryID = tblProductCats.ID)
它不會返回的產品記錄,反正是有修改查詢,以便它不返回記錄用0作爲值並將類別名稱顯示爲'孤兒'?
Damnit,我正要發佈相同的東西!大聲笑,+1無論如何 – Codesleuth 2010-09-01 09:59:02
感謝您的答案,如果tblProducts.categoryID = 0雖然然後它不會仍然返回該記錄。我想我需要使用不同類型的連接? – 2010-09-01 09:59:45
我的答案對你的問題使用了不同類型的JOIN。你說左連接不起作用嗎?如果是這樣,你有一個WHERE子句,你沒有向我們展示將它轉換爲內部聯接? – 2010-09-01 10:03:27