我正在从事opencart项目。在管理面板中,我只想列出那些不属于类别ID 71的产品,即使产品不是任何类别的地图。左加入不工作
下面是我的查询根据条件以便获取产品:
SELECT *
FROM nu_product p
LEFT JOIN nu_product_to_category p2c ON (p.product_id = p2c.product_id)
LEFT JOIN nu_product_description pd ON (p.product_id = pd.product_id)
WHERE pd.language_id = '1' AND p2c.category_id != '71'
GROUP BY p.product_id
ORDER BY p.product_id DESC
LIMIT 0,20
但上述条件给了我不属于类型ID 71.未属于任何类别只产品,在产品不展示。我也想展示给他们。
所以,请告诉我上述查询有什么问题。我在上面的查询中错过了什么。
在'ON'子句中移动您的'WHERE'条件。 'FROM \t nu_product p \t \t LEFT JOIN nu_product_to_category P2C \t \t \t ON p.product_id = p2c.product_id \t \t \t \t AND p2c.category_id!= '71' \t \t LEFT JOIN nu_product_description PD \t \t \t ON p.product_id = pd.product_id \t \t \t \t AND pd.language_id ='1'' –
在que应用您的更改后ry,它也显示属于类别ID 71的产品。 – user2393886
它对您期望的结果并不清楚。也许第一个连接应该是内连接。所有产品都有一个类别吗? –