MYSQL必知必会:使用函数汇总处理数据

上一个博客主要通过where进行简单的数据过滤以及使用正则表达式对数据进行通配.这篇博客主要来演示了mysql中函数的使用方法.

下面是表t3的结构和数据.
这里写图片描述

之前通过where过滤后的结果集的字段名都是使用表的字段名.但这样太死板了,于是我们可以使用concat()函数来进行数据的拼接,以及使用AS关键字来进行字段的取别名显示.

1.Concat
Sample1:我要把每个人的姓名和生日拼接成一个字符串显示.就可以使用concat()函数来进行自定义的拼接.
具体形式为:concat(参数1,参数2,参数3,…).每个参数之间使用逗号分隔.

这里写图片描述

2.Count
Sample2:我要统计数据库的记录数量.可以使用Count()函数,参数可以为*或者1或者其他数字,也可以是任意的字段名.比如:Count(score).返回的是分数不为NULL的记录的数量.Count()函数主要用来统计符合条件的记录数量,常在分组数据时使用.

这里写图片描述

下面还有两个简单的例子:针对整数,小数,字符串的过滤都差不多了,但是对于日期的过滤是怎么样操作的呢?

Sample3:我要返回表中1997年出生的记录的数量.
这里写图片描述

Sample4:我要返回表中不在6月出生的记录.
这里写图片描述

3.时间相关函数
可以通过日期相关的函数来取出各个精确的时间部分进行过滤.有year(),month(),day(),Hour(),Minute(),Second()等等.同时可以使用CurDate(),CurTime(),Now()方法来获取当前的准确日期时间.

这里写图片描述

4.Avg
从名字就可以看出来这是一个就算平均值的方法,它的返回值是不会计算NULL值的.
Sample5:计算所有人的平均分.
这里写图片描述

5.Max,Min
Max()和Min()函数用来得到某个字段的最大值或者最小值.
Sample6:获得分数最低的记录.
不知道会不会有人会这么做…这样确实在t3表中是没问题的.但是如果最低分不止一个人呢…这个时候这样做就是有问题的了.
这里写图片描述

可以先查询到最高的分数,然后再查询分数和最高的分数相同的记录.
这里写图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值