SQL COUNT 条记录在表 2 JOINS 掉

标签 sql mysql select join count

使用 MySQL,我有三个表:

项目:

ID  name
1   "birthday party"
2   "soccer match"
3   "wine tasting evening"
4   "dig out garden"
5   "mountainbiking"
6   "making music"

批处理:

ID  projectID  templateID  when
1   1          1            7 days before
2   1          1            1 day  before
3   4          2           21 days before
4   4          1            7 days before
5   5          1            7 days before
6   3          5            7 days before
7   3          3           14 days before
8   5          1           14 days before

模板:

ID  name  message
1   inf1  "Hi, I'd like to invite ..."
2   for1  "Dear Sir, Madam, ..."
3   can1  "Can you please ..."
4   inf2  "Would you like to ..."
5   all1  "To all dear friends ..."
6   inf3  "Does any of you guys ..."

我想显示一个模板表和使用它们的项目数。 因此,结果应该是(已更新!):

templateName  projectCount
inf1          3
for1          1
can1          1
inf2          0
all1          1
inf3          0

我尝试过使用各种 JOIN 的各种 SQL 查询,但我想这对我来说太复杂了。是否可以使用单个 SQL 语句获得此结果?

最佳答案

SELECT t.name templateName, COUNT(DISTICT b.projectID) projectCount
FROM templates t
LEFT OUTER JOIN batches b ON t.ID = b.templateID
GROUP BY t.ID, t.name
ORDER BY t.ID

关于SQL COUNT 条记录在表 2 JOINS 掉,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2598338/

相关文章:

mysql - 将日期时间值分类到类次,其中类次在第二天结束

mysql - 使用 IF 语句根据 LEFT JOIN 获取所有字段

sql - 使用 join 检索匹配的行

php - mysql_query 问题 - 语法错误

mysql - 在 SELECT mysql 中使用 IF 和 JOIN 时出现错误

php - 根据第一个选择框 (PHP) 使用 SQL 中的内容填充第二个选择框

mysql - 难以使用 "count"进行 mysql 查询

java - MySQL 插入 Gson 日期

java - Java 查询中的 SQL 变量

sql - 忽略 select 语句中的空值