SQL 查询 - 选择不同的类别并计数
Posted
技术标签:
【中文标题】SQL 查询 - 选择不同的类别并计数【英文标题】:SQL query - select distinct category and count 【发布时间】:2015-06-30 17:48:36 【问题描述】:我正在处理一个 SQL 查询,在该查询中我选择不同的类别并计算 x 类别中有多少行。我想达到这样的结果:
X.category | Amount
--------------------
Hi | 3
--------------------
Hello | 2
--------------------
SELECT DISTINCT company.category, category.desc2 FROM company, category
此查询有效,但缺少数量(计数)。
【问题讨论】:
google 并了解 SQL 中的 GROUP BY 子句。 【参考方案1】:我认为您要查找的代码是 GROUP BY
-clause。
SELECT DISTINCT company.category, COUNT(*)
FROM company, category
GROUP BY company.category
您可以在docs 中阅读更多信息。
【讨论】:
【参考方案2】:试试这个查询
SELECT company.category, count(*) FROM company, category
Where company.category=Category.category
Group By company.category
【讨论】:
【参考方案3】:好的,我想我已经想出了解决我自己问题的方法。
SELECT DISTINCT company.category, count(DISTINCT company.id) as amount, category.name, category.desc2 FROM company, category WHERE company.category = category.name GROUP BY company.category;
【讨论】:
您应该放弃 pre Ansi 语法并使用 JOIN。它更好,因为你可以用它做更多的事情。如果你想要一个例子,我可以写一个答案。但是计数(不同)是这样的方式以上是关于SQL 查询 - 选择不同的类别并计数的主要内容,如果未能解决你的问题,请参考以下文章