mysql函数大全

mysql函数大全

mysql函数大全

  1. 数学函数
函数 简介 示例 返回值
abs(x) 返回x的绝对值 select abs(-1) 1
ceil(x),ceiling(x) 返回大于或等于x的最小整数 select ceil(1.5) 2
floor(x) 返回小于或等于x的最大整数 select floor(1.5) 1
rand() 返回0->1的随机数 select rand() 0.93099315644334
rand(x) 返回0->1的随机数,x值相同时返回的随机数相同 select rand(2) 1.5865798029924
sign(x) 返回x的符号,x是负数、0、正数分别返回-1、0和1 select sign(-10) (-1)
pi() 返回圆周率(3.141593) select pi() 3.141593
truncate(x,y) 返回数值x保留到小数点后y位的值(与round最大的区别是不会进行四舍五入) select truncate(1.23456,3) 1.234
round(x) 返回离x最近的整数 select round(1.23456) 1
round(x,y) 保留x小数点后y位的值,但截断时要进行四舍五入 select round(1.23456,3) 1.235
pow(x,y).power(x,y) 返回x的y次方 select pow(2,3) 8
sqrt(x) 返回x的平方根 select sqrt(25) 5
exp(x) 返回e的x次方 select exp(3) 20.085536923188
mod(x,y) 返回x除以y以后的余数 select mod(5,2) 1
log(x) 返回自然对数(以e为底的对数) select log(20.085536923188) 3
log10(x) 返回以10为底的对数 select log10(100) 2
radians(x) 将角度转换为弧度 select radians(180) 3.1415926535898
degrees(x) 将弧度转换为角度 select degrees(3.1415926535898) 180
sin(x) 求正弦值(参数是弧度) select sin(radians(30)) 0.5
asin(x) 求反正弦值(参数是弧度)
cos(x) 求余弦值(参数是弧度)
acos(x) 求反余弦值(参数是弧度)
tan(x) 求正切值(参数是弧度)
atan(x) atan2(x) 求反正切值(参数是弧度)
cot(x) 求余切值(参数是弧度)
  1. 字符串函数
函数 简介 示例 返回值
char_length(s) 返回字符串s的字符数 select char_length(‘你好123’) 5
length(s) 返回字符串s的长度 select length(‘你好123’) 9
concat(s1,s2,…) 将字符串s1,s2等多个字符串合并为一个字符串 select concat(’12’,’34’) 1234
concat_ws(x,s1,s2,…) 同concat(s1,s2,…)函数,但是每个字符串直接要加上x select concat_ws(‘@’,’12’,’34’) 12@34
insert(s1,x,len,s2) 将字符串s2替换s1的x位置开始长度为len的字符串 select insert(‘12345′,1,3,’abc’) abc45
upper(s),ucaase(s) 将字符串s的所有字母变成大写字母 select upper(‘abc’) ABC
lower(s),lcase(s) 将字符串s的所有字母变成小写字母 select lower(‘ABC’) abc
left(s,n) 返回字符串s的前n个字符 select left(‘abcde’,2) ab
right(s,n) 返回字符串s的后n个字符 select right(‘abcde’,2) de
lpad(s1,len,s2) 字符串s2来填充s1的开始处,使字符串长度达到len select lpad(‘abc’,5,’xx’) xxabc
rpad(s1,len,s2) 字符串s2来填充s1的结尾处,使字符串的长度达到len select rpad(‘abc’,5,’xx’) abcxx
ltrim(s) 去掉字符串s开始处的空格
rtrim(s) 去掉字符串s结尾处的空格
trim(s) 去掉字符串s开始和结尾处的空格
trim(s1 from s) 去掉字符串s中开始处和结尾处的字符串s1 select trim(‘@’ from ‘@@abc@@’) abc
repeat(s,n) 将字符串s重复n次 select repeat(‘ab’,3) ababab
space(n) 返回n个空格
replace(s,s1,s2) 将字符串s2替代字符串s中的字符串s1 select replace(‘abc’,’a’,’x’) xbc
strcmp(s1,s2) 比较字符串s1和s2
substring(s,n,len) 获取从字符串s中的第n个位置开始长度为len的字符串
mid(s,n,len) 同substring(s,n,len)
locate(s1,s),position(s1 in s) 从字符串s中获取s1的开始位置 select locate(‘b’,’abc’) 2
instr(s,s1) 从字符串s中获取s1的开始位置 select instr(‘abc’,’b’) 2
reverse(s) 将字符串s的顺序反过来 select reverse(‘abc’) cba
elt(n,s1,s2,…) 返回第n个字符串 select elt(2,’a’,’b’,’c’) b
export_set(x,s1,s2) 返回一个字符串,在这里对于在“bits”中设定每一位,你得到一个“on”字符串,并且对于每个复位(reset)的位,你得到一个“off”字符串。每个字符串用“separator”分隔(缺省“,”),并且只有“bits”的“number_of_bits”(缺省64)位被使用。 select export_set(5,’y’,’n’,’,’,4) y,n,y,n
field(s,s1,s2…) 返回第一个与字符串s匹配的字符串位置 select field(‘c’,’a’,’b’,’c’) 3
find_in_set(s1,s2) 返回在字符串s2中与s1匹配的字符串的位置
make_set(x,s1,s2) 返回一个集合(包含由“,”字符分隔的子串组成的一个字符串),由相应的位在bits集合中的的字符串组成。str1对应于位0,str2对应位1,等等。 select make_set(1,’a’,’b’,’c’); a
substring_index 返回从字符串str的第count个出现的分隔符delim之后的子串。如果count是正数,返回第count个字符左边的字符串。 select substring_index(‘ab’,’‘,1) a
substring_index 如果count是负数,返回第(count的绝对值(从右边数))个字符右边的字符串。 select substring_index(‘ab’,’‘,-1) b
load_file(file_name) 读入服务器上有可读权限的文件(小于max_allowed_packet)并且作为一个字符串返回文件内容。
Comments are closed.