繁体   English   中英

SQL LEFT JOIN 使用 WHERE 条件

[英]SQL LEFT JOIN using WHERE condition

我喜欢这张桌子:

categorizables

在此处输入图像描述

我也有没有任何外键的表productscategories

我尝试创建这样的查询来计算每个类别的产品:

SELECT category_id, COUNT(categorizable_id), categories.title 
FROM categorizables 
LEFT JOIN categories ON categories.id = category_id
GROUP BY category_id

它有效,但是当我尝试添加WHERE条件时,它不起作用:

SELECT category_id, COUNT(categorizable_id), categories.title 
FROM categorizables 
LEFT JOIN categories ON categories.id = category_id
WHERE categorizables.categorizable_type = "App\Models\Product"
GROUP BY category_id

如何正确添加WHERE条件?

使用撇号而不是引号并转义反斜杠:

SELECT category_id, COUNT(categorizable_id), categories.title 
FROM categorizables 
LEFT JOIN categories ON categories.id = category_id
WHERE categorizables.categorizable_type = 'App\\Models\\Product'
GROUP BY category_id

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM