MySQL函数(四)

B站搜索是怪物啊,分享技术视频,微信公众号搜索乌鸦的黑匣子,分享技术文档
1.聚合函数
1.平均值
select avg(col_name) from tb_name;
2.计数
select count(col_name) from tb_name;
3.最大值
select max(col_name) from tb_name;
4.最小值
select min(col_name) from tb_name;
5.合计
select sum(col_name) from tb_name;
2.Null值的函数
select sum(ifnull(col_name,value)) from tb_name;
3.处理重复值
1.会自动忽略Null值
select count(distinct col_name) from tb_name;
2.算入Null值
select count(distinct ifnull(col_name,"未知")) from tb_name;
4.创建数据组
1.group by 和 where 一起使用时放在 where 后面
select id,sum(price) from tb_name group by id;
2.多个分组
  首先用department_id进行分组,之后用job_id进行分组,最后计算每个部门job_id的薪水总和
select department_id,job_id,sum(salary) from tb_name group by department_id,job_id;
5.having的用法
1.having的应用场景是对分组的数据进行筛选 where的应用场景是对行数据进行筛选
select class,sum(ifnull(price,0)) from list where id>=1 group by class having sum(ifnull(price,0))>100;
6.子查询
1.单行子查询 使用 = > >= < <= <> !=
2.多行子查询 使用 IN ANY ALL 可以配套上面使用 以及NOT
select l.name from list l where l.belong_class in(select name from class where id >=4);
7.聚合查询
 select list.name,class.serial_number from list,class where class.name = list.belong_class;
8.字符连接函数
select concat(col_name1,"--",col_name2,"其他拼接的字符") from tb_name;
9.文本处理函数
length(col_name)    # 返回字符串长度
lower(col_name)     # 将字符串变成小写
ltrim(col_name)     # 消除字符串左边空格
rtrim(col_name)     # 消除字符串右边空格
upper(col_name)     # 将字符串转成大写
10.日期格式化函数
# 大小写没有影响
select date_format(col_name,"%Y-%m-%d %H:%i:%s") from tb_name;

11.日期处理函数
1.返回当前日期
select now();
'''
datetime的格式是 YYYY-MM-DD HH-MM-SS
'''

2.返回日期的时间的日期/时间部分
select date(col_name) from tb_name;  # 返回格式 YYYY-MM-DD
select time(col_name) from tb_name;  # 返回格式 HH-MM-SS

3.返回一个日期的年份/月份/天数/小时/分钟/秒部分
select year(col_name) from tb_name;     # 返回格式 YYYY
select month(col_name) from tb_name;     # 返回格式 MM
select day(col_name) from tb_name;      # 返回格式 DD
select hour(col_name) from tb_name;     # 返回格式 HH
select minute(col_name) from tb_name;   # 返回格式 MM
select second(col_name) from tb_name;   # 返回格式 SS
12.数字处理函数
abs(col_name)    # 返回绝对值
sin(col_name)    # 返回正弦值
cos(col_name)    # 返回余弦值
tan(col_name)    # 返回正切值
sqrt(col_name)   # 返回平方根

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值