Mysql数据库与sql语言(三)--常用函数

一聚合函数

count(列名):统计不为null的列的个数,count(distinct 列名)是返回列中不重复的值的个数
sum(列名):返回一列中值得总和
avg(列名):返回一列中值得平均值
min(列名):返回一列中值得最小值
max(列名):返回一列中值得最大值
group_concat(列名):返回一列中值得连接后的结果

二算术函数

floor(x):向下取整
ceil(x):向上取整
rand():随机数
abs(x)  :返回x的绝对值
least(值1,值2,...):返回集合中的最小值
greatest(值1,值2,..):返回集合中的最大值
mod(x,y):返回x/y的余数
pow(x,y):返回x的y次方
round():四舍五入
round(x,y):保留y位小数,四舍五入
比如:select ROUND(4.355,2) ;结果为4.36
truncate(x,y):直接截取x的y位小数
比如:select TRUNCATE(4.355,2) ;结果为4.35

三.字符串函数

length(str):返回字符串的长度(一个中文会显示3)
char_length(str):返回字符串字符的个数
concat(s1,s2,..) :连接字符串
concat_ws(x,s1,s2..):连接字符串用x分割
insert(str,x,y,instr):将字符串str从第x位置开始,y个字符长的子串替换为字符串instr,返回结果
lower(str):将字符串大写都变成小写
upper(str):将字符串小写转大写
left(s,n):返回字符串s的前n个字符
right(s,n):返回字符串s的后n个字符
trim(str):去除字符串首部和尾部的所有空格
ltrim(str):去除字符串左边所有的空格
rtrim(str):去除字符串右边所有的空格
repeat(s,n):将字符串s重复n次
replace(s,s1,s2):将字符创s中的s1换成s2
substr(s,x,n):从x位开始截取长度为l的字符串s
reverse(str):反转字符串

四.时间类函数

curdate:返回当前的日期
curtime:返回当前的时间
now():返回当前的日期和时间
date_format(date,format):返回日期格式
DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p')
DATE_FORMAT(NOW(),'%m-%d-%Y')
DATE_FORMAT(NOW(),'%d %b %y')
DATE_FORMAT(NOW(),'%d %b %Y %T:%f')
结果如下
Dec 29 2008 11:45 PM
12-29-2008
29 Dec 08
29 Dec 2008 16:25:46.635

格式可以参考这篇文档:sql日期格式
dayofweek():返回的一星期的第几天(注意:国外的是从星期天开始算第一天的,所以比如显示5,则代表的是星期六)
dayname():返回的是星期名
dayofmonth();  返回date是一个月的第几天(1~31)
dayofyear():返回的是一年的第几天(1~366)
hour(time): 返回time的小时值(0~23) 
minute(time):返回time的分钟值(0~59) 
month(date):返回date的月份值(1~12)
datediff(d1,d2):d1减去d2的天数.
select datediff('2017-8-1','2017-7-1');结果为31
timestampdiff(单位,d1,d2):d2减d1
select timestampdiff(month,'2017-8-1','2017-7-1');结果为-1


你可能感兴趣的:(mysql,mysql)