mysql+group+by+默认0,从0到1学习网络安全 【MySQL基础-MySQL 分组】

MySQL GROUP BY 语句

GROUP BY 语句根据一个或多个列对结果集进行分组。

在分组的列上我们可以使用 COUNT, SUM, AVG,等函数。

GROUP BY 语法

SELECT 字段 FROM 表名 WHERE 条件 GROUP BY 字段;

实例演示

以下是实例要用到的表数据:

mysql> select * from mydb_jianshu;

+------------+----------------------------+----------------+-----------------+

| jianshu_id | jianshu_title | jianshu_author | submission_date |

+------------+----------------------------+----------------+-----------------+

| 2 | 学习网络安全从0到1 | Fangdm | 2018-02-09 |

| 3 | MySQL基础 | Fangdm | 2018-02-09 |

| 4 | 安全测试 | Fangdm | 2018-03-01 |

| 5 | GROUP BY | Fangdm | 2018-03-02 |

| 6 | TEST | Fang | 2018-03-02 |

| 7 | TEST | Fang | 2018-03-02 |

+------------+----------------------------+----------------+-----------------+

6 rows in set (0.00 sec)

接下来我们使用 GROUP BY 语句 将数据表按 jianshu_author 进行分组,并统计每个 作者 有多少条记录:

mysql> select jianshu_author,count(*) as "count(*)/条数" from mydb_jianshu group by jianshu_author;

+----------------+-----------------+

| jianshu_author | count(*)/条数 |

+----------------+-----------------+

| Fang | 2 |

| Fangdm | 4 |

+----------------+-----------------+

2 rows in set (0.00 sec)

我们也可以指定被选中行必须满足条件

比如,我们根据 jianshu_author 分组,但我们只需要查询出数据条数大于 2 的。

mysql> select jianshu_author,count(*) as "count(*)/条数" from mydb_jianshu group by jianshu_author having count(*)>2;

+----------------+-----------------+

| jianshu_author | count(*)/条数 |

+----------------+-----------------+

| Fangdm | 4 |

+----------------+-----------------+

1 row in set (0.00 sec)

注:group by having用于指示被选择的行必须满足的条件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值