首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >值在MySQL的特定列中出现的次数

值在MySQL的特定列中出现的次数
EN

Stack Overflow用户
提问于 2012-04-18 06:11:45
回答 4查看 185.5K关注 0票数 56

以前可能有人问过这个问题,但我无法在无数的搜索结果中找到自己的方式。

给定一个非规范化的MySQL表,要计算x列的每个不同值被使用的次数,最优化的查询是什么?

例如,给定一个包含以下内容的表

代码语言:javascript
复制
mike
mary
mike

返回如下结果:

代码语言:javascript
复制
mike 2
mary 1

从MySQL文档中可以看出,count是一个可以与GROUP BY一起使用的聚合函数,但是它并没有做我想要的事情(它返回GROUP BY中的总行数,而不是每行的外观数)。也就是说,这不适用于SELECT count(email) as c FROM orders GROUP BY email

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-04-18 06:13:50

代码语言:javascript
复制
select email, count(*) as c FROM orders GROUP BY email
票数 96
EN

Stack Overflow用户

发布于 2012-04-18 06:15:05

代码语言:javascript
复制
SELECT column_name, COUNT(column_name)
FROM table_name
GROUP BY column_name
票数 25
EN

Stack Overflow用户

发布于 2012-04-18 06:18:12

看看Group by函数。

group by函数所做的是对给定字段的相似值进行分组。然后,您可以使用COUNT函数显示该值分组的次数。

MySQL Documentation

您还可以将group by函数与MySQL定义的大量其他函数一起使用(请参阅上面的链接)。

代码语言:javascript
复制
mysql> SELECT student_name, AVG(test_score)
    ->        FROM student
    ->        GROUP BY student_name;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10199950

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档