MySQL中的单行函数是一组用于处理单个行数据的函数,这些函数可以对一个行数据进行操作,返回一个结果,以下是一些常用的MySQL单行函数及其用法:
1、字符函数
字符函数主要用于处理字符串类型的数据。
函数名 | 功能描述 |
CONCAT(str1, str2, …) | 连接字符串 |
LENGTH(str) | 返回字符串的长度 |
SUBSTRING(str, pos, len) | 返回子字符串 |
REPLACE(str, from_str, to_str) | 替换字符串中的子串 |
UPPER(str) | 将字符串转换为大写 |
LOWER(str) | 将字符串转换为小写 |
LTRIM(str) | 去除字符串左侧的空格 |
RTRIM(str) | 去除字符串右侧的空格 |
TRIM(str) | 去除字符串两侧的空格 |
INSTR(str, substr) | 返回子串在字符串中的位置 |
LOCATE(substr, str) | 返回子串在字符串中的位置(区分大小写) |
REVERSE(str) | 反转字符串 |
BINARY LENGTH(str) | 返回二进制字符串的长度 |
BINARY SUBSTRING(str, pos, len) | 返回二进制字符串的子串 |
BINARY REPLACE(str, from_str, to_str) | 替换二进制字符串中的子串 |
BINARY INSTR(str, substr) | 返回二进制子串在字符串中的位置 |
BINARY LOCATE(substr, str) | 返回二进制子串在字符串中的位置(区分大小写) |
BINARY REVERSE(str) | 反转二进制字符串 |
2、数值函数
数值函数主要用于处理数值类型的数据。
函数名 | 功能描述 |
ABS(x) | 返回x的绝对值 |
SQRT(x) | 返回x的平方根 |
PI() | 返回圆周率π的值(3.1415926…) |
NULLIF(x, y) | 如果x等于y,则返回NULL,否则返回x的值 |
COALESCE(x, y, …) | 如果x为NULL,则返回y的值,否则返回x的值;可以有多个参数,从左到右依次判断,直到找到非NULL值为止 |
IFNULL(x, y) | 如果x为NULL,则返回y的值,否则返回x的值;与COALESCE类似,但只能有两个参数 |
NVILPHASE(x) | 返回x的相反数的绝对值的倒数(即1/abs(x)) |
FLOOR(x) | 向下取整,返回小于或等于x的最大整数 |
CEILING(x) | 向上取整,返回大于或等于x的最小整数 |
RAND() | 返回0到1之间的随机浮点数(包含0和1) |
| TRUNCATE(x, y) | 将x截断为y位小数,并返回截断后的值;如果y为0,则直接去掉小数部分,不四舍五入;如果y大于0,则保留y位小数,并对第y+1位进行四舍五入;如果y小于0,则保留y位小数,并对第y1位进行四舍五入;如果y为负数且绝对值大于x的整数部分位数,则保留整数部分,并对第y+1位进行四舍五入;如果y为负数且绝对值小于等于x的整数部分位数,则直接去掉小数部分,不四舍五入;如果y为NULL,则直接去掉小数部分,不四舍五入;如果x为NULL,则返回NULL;如果x为0,则返回0;如果x为整数,则直接去掉小数部分,不四舍五入;如果x为浮点数,则保留y位小数,并对第y+1位进行四舍五入;如果y为0且x为负数,则返回0;如果y为0且x为正数,则返回0.0;如果y为负数且x为负数,则返回0;如果y为负数且x为正数,则返回0.0;如果y为正数且x为负数,则返回0.0;如果y为正数且x为正数,则返回截断后的值;如果y为NULL且x为负数,则返回0;如果y为NULL且x为正数,则返回0.0;如果y为NULL且x为整数,则直接去掉小数部分,不四舍五入;如果y为NULL且x为浮点数,则保留y位小数,并对第y+1位进行四舍五入;如果y为负数且绝对值大于x的整数部分位数且x为负数,则返回0;如果y为负数且绝对值大于x的整数部分位数且x为正数,则返回0.0;如果y为负数且绝对值小于等于x的整数部分位数且x为负数,则直接去掉小数部分,不四舍五入;如果y为负数且绝对值小于等于x的整数部分位数且x为正数,则直接去掉小数部分,不四舍五入;如果y为正数且绝对值大于x的整数部分位数且x为负数,则返回0.0;如果y为正数且绝对值大于x的整数部分位数且x为正数,则返回截断后的值;如果y为正数且绝对值小于等于x的整数部分位数且x为负数,则直接去掉小数部分,不四舍五入;如果y为正数且绝对值小于等于x的整数部分位数且x为正数,则直接去掉小数部分,不四舍五入。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/640171.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复