MySQL从表1中选择ID并从表2中选择计数(ID)

米尔扎·索(Mirza Saw)

我有两张桌子。我想从表1中选择ID,并从表2中进行计数

表格1

Id  qId opt
1   30  Chris Christie
2   30  Hillary Clinton
3   30  Allan West
4   30  Joe Biden
5   31  Mark
6   31  Ben Johnson

表2

poll_id qId ansId
201     30  1
202     30  2
204     31  8

我尝试了以下查询,由于表2中没有3和4,因此仅输出ansId 1和2。

SELECT a.Id, 
a.opt, 
COUNT(b.ansId)  
from Table1 a 
INNER JOIN Table2 b ON a.Id = b.ansId 
where a.qId =30

但是我需要所有ansId 1,2,3,4,其3和4的计数为0,如下所示。

Id   opt               COUNT(b.ansId)
1    Chris Christie    1
2    Hillary Clinton   1
3    Allan West        0
4    Joe Biden         0
哈里德·朱奈德(M Khalid Junaid)

首先,您缺少group by,count是一个聚合函数,需要将其分组,其次,您需要在on子句中使用带有附加条件的左连接,即and a.qId =30如果未找到left id,它将为您提供结果在右边的表中,使用where子句将过滤掉整个结果集,而如果在联接中使用其他条件,则只会从右边的表中过滤记录

SELECT a.Id,
a.opt,
COUNT(b.ansId)  from Table1 a
LEFT JOIN Table2 b ON a.Id = b.ansId and  a.qId =30
GROUP BY a.Id

小提琴演示

样本数据集更新后进行编辑

SELECT a.Id,
a.opt,
COUNT(b.ansId)  from Table1 a
LEFT JOIN Table2 b ON a.Id = b.ansId
WHERE  a.qId =30
GROUP BY a.Id

小提琴演示2

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从表中选择多个ID

来自分类Dev

从表1中选择一个随机行,其中表2中不存在ID

来自分类Dev

根据表2从表1中选择记录

来自分类Dev

我正在尝试从2个mysql表中选择数据到1个查询中

来自分类Dev

在单个查询中从多个表中选择记录计数

来自分类Dev

从mysql中的表中选择不同的表项

来自分类Dev

使用postgresql,如何连接表,从左表中选择全部,并从右表中求和和计数?

来自分类Dev

从2个不同的表中选择值,并在具有相同ID的行中打印值

来自分类Dev

如果在表2中存在MySQL,请从表1中选择所有数据,并通过ID从表2中选择替换值

来自分类Dev

从表中选择ID,其中(ID,> 5000)中的(no,id)

来自分类Dev

如何使用表B中的条件从表A中选择计数

来自分类Dev

在单个查询中从多个表中选择记录计数

来自分类Dev

MySQL的:从表1中选择行,并测试表2中是否存在行

来自分类Dev

SQL查询以从一个表中选择所有行,并从表2中选择行

来自分类Dev

从PHP Mysql中的1个数据库中选择2个表

来自分类Dev

从MySQL中的表中选择不同的表项

来自分类Dev

MySQL从不同的表中选择ID

来自分类Dev

从table1以及mysql中的table2中选择所有结果,其中两个表都有一个公共ID

来自分类Dev

从2个不同的表中选择值,并在具有相同ID的行中打印值

来自分类Dev

MySQL从表1,表2中选择*作为``测试''

来自分类Dev

MySQL从表1中选择所有行,并从表2中选择所有行,其中

来自分类Dev

如何基于两个表中的id从2个表中选择内容

来自分类Dev

如何从下拉菜单中选择mysqli表ID号并从该行输出选择值

来自分类Dev

MySQL从2个表和计数中选择不同的值

来自分类Dev

如何使用mysql中的连接从一个表中选择一行并从其他表中选择多行,

来自分类Dev

php mysql 从 2 个表中选择计数

来自分类Dev

从表 1 中选择所有内容,并从表 2 和表 3 中选择平均和不同的值

来自分类Dev

MYSQL从表中选择并从另一个表中计数

来自分类Dev

在 1 个查询中从 2 个表中选择行

Related 相关文章

  1. 1

    从表中选择多个ID

  2. 2

    从表1中选择一个随机行,其中表2中不存在ID

  3. 3

    根据表2从表1中选择记录

  4. 4

    我正在尝试从2个mysql表中选择数据到1个查询中

  5. 5

    在单个查询中从多个表中选择记录计数

  6. 6

    从mysql中的表中选择不同的表项

  7. 7

    使用postgresql,如何连接表,从左表中选择全部,并从右表中求和和计数?

  8. 8

    从2个不同的表中选择值,并在具有相同ID的行中打印值

  9. 9

    如果在表2中存在MySQL,请从表1中选择所有数据,并通过ID从表2中选择替换值

  10. 10

    从表中选择ID,其中(ID,> 5000)中的(no,id)

  11. 11

    如何使用表B中的条件从表A中选择计数

  12. 12

    在单个查询中从多个表中选择记录计数

  13. 13

    MySQL的:从表1中选择行,并测试表2中是否存在行

  14. 14

    SQL查询以从一个表中选择所有行,并从表2中选择行

  15. 15

    从PHP Mysql中的1个数据库中选择2个表

  16. 16

    从MySQL中的表中选择不同的表项

  17. 17

    MySQL从不同的表中选择ID

  18. 18

    从table1以及mysql中的table2中选择所有结果,其中两个表都有一个公共ID

  19. 19

    从2个不同的表中选择值,并在具有相同ID的行中打印值

  20. 20

    MySQL从表1,表2中选择*作为``测试''

  21. 21

    MySQL从表1中选择所有行,并从表2中选择所有行,其中

  22. 22

    如何基于两个表中的id从2个表中选择内容

  23. 23

    如何从下拉菜单中选择mysqli表ID号并从该行输出选择值

  24. 24

    MySQL从2个表和计数中选择不同的值

  25. 25

    如何使用mysql中的连接从一个表中选择一行并从其他表中选择多行,

  26. 26

    php mysql 从 2 个表中选择计数

  27. 27

    从表 1 中选择所有内容,并从表 2 和表 3 中选择平均和不同的值

  28. 28

    MYSQL从表中选择并从另一个表中计数

  29. 29

    在 1 个查询中从 2 个表中选择行

热门标签

归档