Mysql常用函数

 合计/统计函数

-count

返回行的总数

count(*):返回满足条件的记录的行数

count(列):统计某列满足条件的记录有多少个,但是会排除为null的情况

 sum

返回满足where条件的行的和

格式:

select sum(列名) [,sum(列名)...] from 表名

                [where 条件]

注意:

1.sum 仅对数值起作用,没有意义

2.对多列求和“,”号不能少

avg

返回满足where条件的列的平均值

格式:

select avg(列名) [,avg(列名)...] from 表名

                [where 条件]

max/min

max/min函数返回满足where条件的列的最大/最小值

格式:

select max(列名) from 表名

                [where 条件]

字符串函数

CHARSET(str)返回字串字符集
CONCAT(string2 [,...])连接字串
INSTR(string, substring)返回substring在string中出现的位置,没有返回0
UCASE(string)转换成大写
LCASE(string)抓换成小写
LEFT(string length)从string中的左边起取length个字符
LENGTH(string)string长度(按照字符)
REPLACE(str, search_str, replace_str)在str中用replace_str替换search_str
STRCMP(string1, string2)比较两字串大小
SUBSTRING(str, position [, length])

从str的position开始【从1开始计算】,取length个字符

LTRIM(string)

RTRIM (string)

TRIM

去除前端空格

去除后端空格

去除前端和后端空格

数学函数

ABS(num)求绝对值
BIN(num)十进制转二进制
CEILING(num)向上取整,得到比num大的最小整数
CONV(num, from_base, to_base)进制转换,从from_base进制z转换为to_base进制
FLOOR(num)向下取整,得到比num小的最大整数
FORMAT(num, decimal_places)保留小数位数,保留decimal_places位小数,四舍五入
HEX(DecimalNumber)转十六进制
LEAST(num, num2 [,...])求最小值
MOD(numerator, denominator)求余

RAND([seed])

返回随机数,范围 [0,1.0]。

rand()每次返回不同的随机数

rand(seed)返回随机数,如果seed不变,该随机数也不变

时间日期函数

CURRENT_DATE()当前日期
CURRENT_TIME()当前时间
CURRENT_TIMESTAMP当前时间戳
DATE(datetime)返回datetime的日期部分
DATE_ADD(date, INTERVAL d_value d_type)在date中加上日期或时间
DATE_SUB (date2, INTERVAL d_value d_type)在date中减去一个时间或日期
DATEDIFF(date1, date2)两个时间差(结果是天)
TIMEDIFF(date1, date2)两个时间差(多少小时多少分钟多少秒)
NOW()当前时间

YEAR | MONTH | DAY(datetime)

年月日

UNIX_TIMESTAMP

返回的是1970-1-1到现在的秒数
FROM_UNIXTIME()可以把一个unix_timestamp秒数转成指定格式的日期

注意:

1.DATE_ADD()中的interval 后面可以是year ,month,day,hour,minute,second等

2.DATE_SUB()中的interval后面可以是year ,month,day,hour,minute,second等

3.DATEDIFF(date1, date2)得到的是天数,而且是date1 - date2 的天数,因此可以取负数

4.这四个date函数的日期类型可以是date,datetime,或者timestamp

5.FROM_UNIXTIME(int , '%Y-%m-%d %H:%i:%s')转成年月日时分秒

USER()查询用户,可以查看登录到mysql的有哪些用户,以及登录的IP
DATABASE()查询当前使用数据库名称
MD5(str)为字符串算出一个MD5 32的字符串,(用户密码)加密
PASSWORD(str)从原文密码str计算并返回密码字符串,通常用于对Mysql数据库的用户密码加密;从mysql 8.0版本取消了

流程控制函数

IF (expr1,expr2,expr3)

如果express为true,则返回expr2,否则返回expr3

IFNULL(expr1, expr2)如果expr1不为空null,则返回expr1,否则返回expr2

SELECT CASE WHEN expe1 THEN expr2

WHEN expe3 THEN expr4

ELSE expr5

END;(类似多重分支)

如果expr1为true,则返回expr2,如果expr3为true,则返回expr4,否则返回expr5

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值