[ 知识点 ] MySQL函数名及释义!

MySQL数学函数名释义示例
abs(x)返回x的绝对值
floor(x)强制去小数
ceil(x)强制进1
truncate(x,d)截断x后的第d位小数,不执行四舍五入
round(x,d)截断x后的第d位小数,执行四舍五入
round(x)截断x后的第1位小数select round(3.468); -> 3.4 select round(3.568); -> 4
rand随机数
sign(x)返回x的符号+:1,0:0,-:-1
pi()返回圆周率
pow(x,y)返回x的y次方的值
sqrt(x)返回x的二次方根,x>0
exp(x)返回e的x次方的值
log(x)返回x的对数,x相对基数为2
log10(x)返回x的对数,x相对基数为10
radians(x)返回x度对应的弧度值
degrees(x)返回x弧度对应的角度值
MySQL字符串函数名释义示例
char_length(s)返回s(字符串)的长度
length()返回字节长度
concat()返回拼接的字符串
concat_ws(n,s1,s2…)返回以n的形式,连接s1,s2…字符串select concat_ws(,’a’,’b’); -> ab
group_concat()不能单独使用,配合分组查询,进行行转列
insert(s1,d,len,s2)返回s1中自d位置开始len长度的字符被s2取代
lower(s)、upper(s)使s字符串中的字母全部小写/大写
left(s,len)返回字符串s从左边第一位开始至len长度位置所截取的字符串select left(‘abcd’,2); -> ab
right(s,len)返回字符串s从右边第一位开始至len长度位置所截取的字符串select right(‘abcd’,2); -> cd
mid(s,d,len)返回字符串s自中间第d位开始,截取长度为len的字符串,select mid(‘abcd’,2,2); -> bc
lpad(s1,len,s2)需要用s2的符号将s1填充至len长度若s1.length>len,select lpad(‘abc’,2,’#’); -> ab;若s1.length<len,select lpad(‘abc’,5,’#’); -> ##abc;
rpad(s1,len,s2)需要用s2的符号将s1填充至len长度若s1.length>len,select lpad(‘abc’,2,’#’); -> bc;若s1.length<len,select lpad(‘abc’,5,’#’); -> abc##;
ltrim、rtrim、trim去空格
repeat(s,x)返回字符串s重复x次之后的值
space(x)返回x个空格
replace(s,s1,s2)返回字符串s中将所有的s1部分全部替换成s2select replace(‘abcabc’,’b’,’’); -> aca*c
strcmp(s1,s2)返回s1与s2比较大小的值 ,若s1>s2,则1,若s1=s2,则0,若s1<s2,则-1
locate(s1,s)返回s1在s中的开始位置
reverse(s)将字符串s进行反转
elt(x,s1,s2,s3…)根据x指定的位置,提取以s1为1起,之后的对应的位置的值,若位置不存在,则返回null
field(s,s1,s2…)根据s指定的字符串参数,从之后的列表中查找s的位置,若不存在,则返回0
find_in_set(s1,s2)根据s1的字符串内容,从参数s2的集合中查找位置select find_in_set(‘a’,’a,b,c’); -> 1
make_set(x,s1,s2…)根据x转化成二进制后的结果,保留和s集合元素数量位低位值,逆序匹配s提取子集合
MySQL日期函数名释义示例
curdate()年月日格式为:yyyy-MM-dd
curtime时分秒格式为:HH:mm:ss
now()当前时间格式为:yyyy-MM-dd HH:mm:ss
unix_timestamp返回自1970-01-01 00:00:00开始到现在时间的秒数
unix_timestamp(date)返回自1970-01-01 00:00:00开始到指定日期的秒数
from_unixtime(x)给x毫秒数,返回自1970-01-01 00:00:00开始到现在的日期格式为:yyyy-MM-dd HH:mm:ss
year(x)、quarter(x)、month(x)、day(x)、hour(x)、minute(x)……返回日期x中相应的年、季度、月、日、时、分、秒、毫秒……
weekday(x)返回日期x中相应的星期几(星期日为1)
weekofyeaar(x)返回日期x是本年的第几个星期,范围是1~53
dayofyear(x)返回日期x是本年的第几天
dayofmonth(x)返回日期x是本月的第几天
extract(n from x)从日期x中以n的形式,提取相应部分,n可以是year、year_month、month……
time_to_sec(x)将日期x转换为秒
sec_to_time(x)将x秒转换为日期
to_days(x)计算日期x至0000年1月1日的天数,系统将0000年定义为365天
from_days(x)计算0000年1月1日开始x天后的日期,系统将0000年定义为365天
datediff(x1,x2)计算日期x1、x2之间的天数差
adddate(x,x1)计算起始日期x加x1天后的日期
adddate(x,interval ‘x2’ n)返回起始日期x加上n形式的x2的值后的日期select adddate(now(),INTERVAL ‘1 2’ year_month); -> 2022-01-01 23:17:11天数day只能单独加,x2可以是负值
date_format(x,n)返回日期x以n的要求显示的日期,其中的秒的表达为i
%a缩写星期名
%b缩写月名
%D带有英文前缀的月中的天Otc29th
%e月的天
%f微秒
%H小时0~23
%h小时01~12
%i分钟0~59
%j年的天001~366
%M月名
%m月,数值0~12
MySQL系统级函数名释义示例
if(expr,v1,v2)使用if语句进行判断if(1=1,’男’,’女’); -> 男 if(1<>1,’男’,’女’); -> 女
ifnull(v1,v2)使用if语句进行判断ifnull(‘aa’,’bb’); -> aa ifnull(null,’bb’); -> null
case when expr1 then v1 [when exprn then vn][else vn+1]endcase表示开始,end表示结束。如果表达式expr1成立则返回v1,如果表达式exprn成立则返回vn,否则返回vn+1。select when 1=1 then 1 else 2 end; -> 1 select when 1<>1 then 1 else 2 end; -> 2 delimiter //set@v=1;select case @v when 1 then ‘ok’ else ‘no’ end;// -> ok
case expr when e1 then v1 [when en then vn][else vn+1]endcase表示开始,end表示结束。如果表达式expr取值为e1,则返回vi,如果表达式取值为en,则返回vn,否则则返回vn+1。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值