【问题标题】:How to count and echo the value如何计算和回显值
【发布时间】:2015-02-14 04:09:17
【问题描述】:

我有一个包含这两个表的数据库 - questionsanswers

表定义

questions - id, question, asked_by
answers - id, question_id(foreign key), answers, sent_by

我想计算并回显每个问题的答案总数。

样本数据

question
id   question   asked_by
1    how r u    emma
2    r u ok     sam

answer
id   question_id answer sent_by
1        2       good    john
2        1       fine    sam
3        2       WTG     biggie

在显示所有问题的页面上,我想按每个问题和答案的数量来写。 question2= 2question1=1 的答案数。

【问题讨论】:

标签: mysql sql count


【解决方案1】:

对于每个带有GROUP BY 子句的问题,您应该使用INNER JOINCOUNT 条目:

SELECT t1.id
     , COUNT(*)
FROM question t1
JOIN answer t2 ON t1.id = t2.question_id
GROUP BY t1.id

【讨论】:

  • 效果很好,但没有得到任何答案的问题不会显示在问题页面上
【解决方案2】:

尝试这种方式先COUNTJOIN,然后GROUP BY

    SELECT q.question,count(*) AS answers FROM question q INNER JOIN answer a ON q.id=a.question.id
GROUP BY q.id

【讨论】:

  • 没有得到任何答案的问题不会显示在问题页面上。谢谢以上
猜你喜欢
  • 2011-04-21
  • 1970-01-01
  • 2023-01-06
  • 2012-06-06
  • 2014-05-12
  • 2014-11-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多