這裏是我的發言:MySQL的,有條件的WHERE子句
SELECT
a.size AS 'size_id',
b.size,
a.stock,
a.id AS 'stock_id',
IFNULL(c.quantity,0) as 'cart_qty'
FROM
stock a
JOIN
sizes b ON a.size = b.id
LEFT JOIN
cart_items c ON a.id = c.stock_id
WHERE
a.product_id = '{$product['id']}'
AND
c.cart_id = '$cart_id'
AND
a.stock > 0
ORDER BY
b.display_order
在上面的,$ cart_id可能是空白,或者可能有沒有匹配的「cart_items」表。如何更改上述內容,以便如果cart_items中沒有匹配項,我仍然可以獲得與product_id匹配的庫存結果?但是,如果cart_items中有匹配,那麼我會得到額外的列(cart_qty)?
如果您想獲得產品信息,無論它在購物車中,爲什麼您通過cart_id限制結果?只要刪除'AND c.cart_id = $ cart_id' –
@Keiran Tai當標準產品頁面加載時運行。所以如果產品已經在用戶的購物車中,我想知道數量。 – daninthemix