数据库MySQL单行函数,分组函数,流程控制函数集合:

一,单行函数;
1、字符函数:
concat:连接; length:获取字节长度;
substr:截取字串;trim:去前后空格;
upper:变大写; lower:变小写;
replace:替换; lpad:左填充;
rpad:右填充;instr:获取字串第一次出现的索引;
2、数学函数:
ceil:向上取整;floor:向下取整;
mod:取模;round:四舍五入;
truncate:截断;rand:获取随机数(0—1之间的小数)
3、日期函数:
now:返回当前时间加日期;year:返回当前年;
mouth:返回当前月;day:返回当前日期;
hour:返回当前时;minute:返回当前分;
second:返回当前秒;curdate:返回当前日期(不加时间);
curtime:返回当前时间(不加日期)
mouthname:以英文的形式返回月;
datediff:返回两个日期相差的天数;
date_formate:将日期转换成字符;
str_to_date:将字符转换成日期;
date_sub():函数从日期减去指定的时间间隔
语法:date_sub(date,interval,expr type)例如
#在employee表中,查询到目前为止,工龄大于等于10年的员工信息。
#方法一:
SELECT *
FROM employee
WHERE YEAR(CURDATE())- YEAR(hireDate)>=10;
#方法二:
SELECT *
FROM employee e
WHERE e.hiredate <= DATE_SUB(SYSDATE(),INTERVAL 10 YEAR);
4、分组函数:
max:最大值; min:最小值;sum:求和;
avg:平均值; count:计算个数;
语法:
select 分组函数(字段)from 表名
支持的类型:
sum和avg一般用于处理数值型,max,min,count可一处理任何形式的数据类型;
以上都忽略 null;
可以搭配 distinct 使用,实现去重统计;
#select max(distinct 字段) from 表名;
count用法:
count(字段):统计该字段非空值的个数;
count():统计结果集的行数;
count(1):相当于在该表中增加了一列1,统计结果集的行 数;
效率:
MYISAM存储引擎:count(
)效率最高;
INNODB存储引擎:count(*)和count(1)效率 > count(字段);
5、其他函数:
version:当前数据库服务器的版本;
database:当前打开的数据库;
user:当前用户;
password(‘字符’):返回该字符的密码形式;
md5(‘字符’):返回该字符的MD5加密形式;
二、多行函数-----流程控制函数:
1、if(条件表达式,表达式1,表达式2)#如果表达式成立,返回表达式1,否则返回表达式2;
2、case 情况1
case 变量、表达式或字段
when 常量1 then 值1
when 常量2 then 值2
when 常量3 then 值3
… …
else 值n
end
case 情况2
case 变量、表达式或字段
when 条件1 then 值1
when 条件2 then 值2
when 条件3 then 值3
… …
else 值n
end

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值