MySQL常用函数/关键字

1.distinct

distinct用于返回某个字段去重后的记录

+------+--------+-------+
| id   | name   | point |
+------+--------+-------+
|    1 | 小明   |   100 |
|    1 | 小红   |    90 |
|    2 | 小刚   |    80 |
|    3 | 小军   |    80 |
+------+--------+-------+

使用distincy对id去重

mysql> select distinct id from test;
+------+
| id   |
+------+
|    1 |
|    2 |
|    3 |
+------+

如果同时对id和point去重,distinct默认同时满足id和point重复才去重,所以如果对上表执行,则结果没有实际去重效果

(如果想要获取去重后的完整记录信息可以使用group by函数)

mysql> select distinct id,point from test;
+------+-------+
| id   | point |
+------+-------+
|    1 |   100 |
|    1 |    90 |
|    2 |    80 |
|    3 |    80 |
+------+-------+

distinct更多用于统计某个字段不重复记录的数量 -- count(distinct name)

mysql> select count(distinct name) from test;
+----------------------+
| count(distinct name) |
+----------------------+
|                    4 |
+----------------------+

使用count函数统计某个字段不重复的记录数,关于count用法后面有介绍

2.group by

group by用于对数据进行分类归总,将查询结果按照1个或多个字段进行分组

mysql> select * from test group by id;
+------+--------+-------+
| id   | name   | point |
+------+--------+-------+
|    1 | 小明   |   100 |
|    2 | 小刚   |    80 |
|    3 | 小军   |    80 |
+------+--------+-------+

利用group by可以便捷的将数据记录去重,在by之后添加限定条件,指定需要分组的字段(可以指定多个字段)

3.order by

order by用于对数据进行排序,搭配关键字 asc/desc 指定 升降序 ,如不指定则默认从小到大升序(asc

mysql> select * from test order by id desc;
+------+--------+-------+
| id   | name   | point |
+------+--------+-------+
|    3 | 小军   |    80 |
|    2 | 小刚   |    80 |
|    2 | b      |   100 |
|    2 | c      |   100 |
|    1 | 小明   |   100 |
|    1 | 小红   |    90 |
|    1 | a      |   100 |
+------+--------+---
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值