五大类 -常用
数字函数
字符串函数
日期时间函数
类型转换函数
流程控制
1.数字函数
select abs(n);求绝对值
select mod(m,n); 取余
select floor(n,d); 向下取整
select ceiling(n,d);向上取整
select round(n,d);四舍五入
select pow(x,y);x的y次方
select PI(); 获取圆周率
select rand(n); 随机数0-1.0 n是用来存产生的随机数
2.字符串函数
select ascii(str); 字符转ascii码
select char(n); ascii码转字符
select concat(n,m,p); 会先转成字符串然后拼接
select length(str); 字符串长度
select left(str,len)/right(str,len)/substring(str,pos,len) ;字符串截取
select ltrim()/rtrim()/trim()/trim(both/leading/trailing re_str from str);两边删除特定的默认空格
select space(n); 产生n个空格的字符
select replace(str,from_str,to_from); 替换
select upper(str)/lower(str);大小写切换
3.日期时间函数
获取特定的值
year()
month()
day()
hour()
minute()
second()
date_format(date,format) 格式化输出
format格式有
%y 年 17
%m 月
%d 天
%h 小时 12制
%i 分
%s 秒
%Y 完整年 2017
%H 24制
select current_date();获取当前日期
select current_time();获取当前时间
select now(); 获取当前时间日期
4.转类型函数
cast(value as type)
convert(value,type)
type有
binary 二进制
char 字符
decimal 浮点
date 日期
time 时间
datetime 日期时间
unsigned 无符号整数
signed 有符号整数
5 流程控制
case 有两种一种等值 一种值比较
case 值 when 比较值 then 值 .... else 值 end
值比较利用比较运算符
case when 比较过程 then 值 .... else 值 end
if(func,a,b) 等价于三目运算 func 为真 返回a 为假返回 b
ifnull(a,b) 判断a是否为null 是返回b不是返回a
nullif(a,b) 判断a,b是否相等 是就null 不是就a