来自3个表的MySQL查询(计数)

来自3个表的MySQL查询(计数),mysql,Mysql,我有三张桌子 Mark id_mark mark_name example record: 1, 'Ford' 2, 'Fiat' 如何执行返回结果的查询(标记添加计数)示例: 你需要两个连接。我已将第二个指定为左外部联接,以便它可以为没有关联广告的品牌返回0。标记通过模型联接到添加 SELECT mark_name, COUNT(id_adds) AS num_ads FROM Mark JOIN Model ON Mark.id_mark = Model.id_mark

我有三张桌子

Mark
id_mark
mark_name

example record:
1, 'Ford'
2, 'Fiat'


如何执行返回结果的查询(标记添加计数)示例:


你需要两个连接。我已将第二个指定为
左外部联接
,以便它可以为没有关联广告的品牌返回0。
标记
通过
模型
联接到
添加

SELECT
  mark_name,
  COUNT(id_adds) AS num_ads
FROM
  Mark JOIN Model ON Mark.id_mark = Model.id_mark
  LEFT OUTER JOIN Adds ON Model.id_model = Adds.id_model
GROUP BY mark_name

你需要两个连接。我已将第二个指定为
左外部联接
,以便它可以为没有关联广告的品牌返回0。
标记
通过
模型
联接到
添加

SELECT
  mark_name,
  COUNT(id_adds) AS num_ads
FROM
  Mark JOIN Model ON Mark.id_mark = Model.id_mark
  LEFT OUTER JOIN Adds ON Model.id_model = Adds.id_model
GROUP BY mark_name
我不是百分之百确定,但像这样的事情应该会奏效


我不是100%确定,但类似的东西应该可以按id标记分组,还是不行?按id_模型分组将返回不好的结果。在这种特殊情况下,按模型分组会起作用,但我认为Kousalik你是对的-应该是按mark分组的,我编辑了帖子-谢谢mark.id_模型?列id\u模型仅在模型中。是否按id\u标记分组?按id_模型分组将返回不好的结果。在这种特殊情况下,按模型分组会起作用,但我认为Kousalik你是对的-应该是按mark分组的,我编辑了帖子-谢谢mark.id_模型?列id\u模型仅在模型中。我认为最好按id\u标记分组。我认为它是标记表的主键。性能会更好。Mark.id\u型号?列id\u模型仅在模型中。我认为最好按id\u标记分组。我认为它是标记表的主键。性能会更好。Mark.id\u型号?列id_model仅在model中。您可以编辑答案并将代码标记为代码,方法是选择它并单击
{}
“按钮”。或者在每一行的开头加上4个空格和代码。您可以编辑您的答案,并将您的代码标记为代码,方法是选择它并单击
{}
“按钮”。或者在每行代码的开头加上4个空格。
    Ford 2
    Fiat 1

2 and 1 count
SELECT
  mark_name,
  COUNT(id_adds) AS num_ads
FROM
  Mark JOIN Model ON Mark.id_mark = Model.id_mark
  LEFT OUTER JOIN Adds ON Model.id_model = Adds.id_model
GROUP BY mark_name
SELECT
  mark_name,
  COUNT(id_adds) AS num_adds
FROM  Mark
 LEFT JOIN Model ON Mark.id_mark = Model.id_mark
 LEFT JOIN Adds ON Model.id_model = Adds.id_model
GROUP BY Mark.id_mark
Select mark.mark_name, count(adds.id_adds) from adds join model on adds.id_model = model.id_model join mark on model.id_mark = mark.id_mark group by mark.id_mark;