这是我的SQL

SELECT items.name, items.id, items.price,
COUNT(cart_items.itemId) AS quantity
FROM `cart_items`
LEFT JOIN `items`
ON cart_items.itemId = items.id
WHERE cart_items.cartId = '2'


cart_items中没有行,其cartId为2。但是,结果集仍然显示一个空行。为什么?我的查询出了什么问题?

(如果我设置cart_items.cartId ='1'(表中的某些行的cartId为1),那么一切都会恢复正常。

对不起,我对这种MySQL还是很陌生。

最佳答案

因为您使用COUNT()(聚合函数)。您应该将计数项目移至子查询。

10-08 11:22