mysql数据库内置函数总结
0x00 前言
熟练的掌握mysql语法和函数是开发人员和安全工作中必备的技能,所以决定将mysql的内置函数全部整理一遍,用作笔记。
0x01 数学函数
- greatest()——返回一组数中的最大值
- least()——返回一组数中的最小值
- floor()——返回一个数的向下取整
- ceiling()——返回一个数的向上取整
- round()——返回一个数四舍五入后的整数值
- truncate()——把一个数字截取为指定小数位数的数字
- abs()——返回一个数的绝对值
- sign()——返回一个数的符号,正数返回1,负数返回-1,零返回0
- sqrt()——返回一个数的平方根
- pow()——以一个数作为另一个数的指数,并返回结果
- sin()——返回一个角度(弧度)的正弦
- cos()——返回一个角度(弧度)的余弦
- tan()——返回一个角度(弧度)的正切
- asin()——返回一个角度(弧度)的反正弦
- acon()——返回一个角度(弧度)的反余弦
- atan()——返回一个角度(弧度)的反正切
- bin()——返回一个数的二进制,作为字符串
- otc()——返回一个数的八进制,作为字符串
- hex()——返回一个数的十六进制,作为字符串
0x02 聚合函数
- count()——求组中项数,返回int型整数
- max()——求最大值
- min()——求最小值
- sum()——返回表达式所有值的和
- avg()——求组中值的平均值
- std()——返回给定表达式中所有值的标准差
- variance()——返回给定表达式中所有值
- group_concat()——返回由属于一组的列值连接组合而成的结果
- bit_and()——逻辑与
- bit_or()——逻辑或
- bit_xor()——逻辑异或
0x03 字符串函数
- ascii(char)——返回表达式最左端字符的ascii码值
- char(x1,x2,x3)——将括号中的多个数字转换成字符,结果组合成一个字符串
- left(str,x)——返回从字符串左边开始指定的x个字符
- right(str,x)——返回从字符串右边开始指定的x个字符
- trim(str)——删除字符串首部和尾部所有空格
- ltrim(str)——删除字符串首部所有空格
- rtrim(str)——删除字符串尾部所有空格
- rpad(str,n,pad)——用字符串pad对str的右边进行填补直到字符串str中字符大于等于n个,然后返回前n个字符
- lpad(str,n,pad)——用字符串pad对str的左边进行填补直到字符串str中字符大于等于n个,然后返回前n个字符
- replace(str1,str2,str3)——用字符串str3替换str1中出现的所有str2
- concat(str1,str2…strn)——连接字符串
- substring(expr,start,length)——返回expr中从start开始,长度为length的子串
- strcmp(str1,str2)——比较两个字符串,相等返回0,str1大返回1,str2大返回-1
0x04 日期和时间函数
- now()——获取当前的日期和时间
- curtime()——获取当前的时间
- curdate()——获取当前的日期
- year()——分析一个日期值返回其中年的部分
- motnth()——以数值类型返回月的部分
- monthname()——以字符串的类型返回月的部分
- dayofyear()——返回这一天在这一年中的序数
- dayofmonth()——返回这一天在这一月中的序数
- dayofweek()——返回这一天在这一周中的序数
- hour()——返回时间值的小时部分
- minute()——返回时间值的分钟部分
- second()——返回时间值的秒部分
- data_add()——对日期进行增加操作
- data_sub()——对日期进行减少操作
0x05 加密函数
- aes_encrypt(str,key)和aes_decrypt(str,key)——对str用密钥key进行aes加密,解密
- encode()和decode()——对一个字符串进行加密,解密
- encrypt(str,key)——使用unix crypt()系统加密字符串(在windows上不可用)
- password(str)——返回str加密后的字符串
0x06 控制流函数
- ifnull(expr1,expr2)——判断参数expr1是否为null,为null时返回expr2,否则返回expr1
- nullif(expr1,expr2)——判断两个参数是否相等,如相等,返回null,如不相等,返回第一个参数
- if(expr1,expr2,expr3)——如果expr1表达式为真,则返回expr2,否则返回expr3
0x07 格式化函数
- format()——把数值格式化为以逗号为间隔的数字序列
- data_format()——把数值格式化成日期格式
- time_format()——把数值格式化为时间格式
0x08 类型转换函数
- cast(expr,AS type)——将一个值转换为指定的数据类型
0x09 系统信息函数
- database()——返回当前数据库名
- benchmark(n,expr)——将表达式expr重复运行n次
- charset()——返回字符串的字符集
- connection_id()——返回当前客户的连接id
- found_rows()——将最后一次select查询的行数返回
- user()——返回当前登陆的用户名
- version()——返回当前mysql服务器版本
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!