- 函数,即功能模块
- 常用函数:数学函数、字符串函数、日期函数
- 数学函数
- 1、绝对值函数:ABS(x)
- select abs(1), abs(-1)
- 2、圆周率的函数:PI()
- select pi()
- 3、非负数的平方根函数:SQRT(x)
- select sqrt(9)
- 4、求余函数:MOD(x,y),x被y除后的余数, 简写%
- select MOD(5,3), 5%3
- 5、 CEIL(x):返回【大于x的最小】整数值;
- select ceil(3.1),ceil(-3.1)
- 6、 FLOOR(x):返回【小于x的最大】整数值。
- select floor(3.1),floor(-3.1)
- 7、四舍五入函数ROUND(x):只保留整数部分
- 四舍五入ROUND(x,y):返回接近于x的值,
- 保留小数点后面y位,若y为负数,就保留到小数点左边y位;
- select round(3.1),round(3.6),round(-3.1),round(-3.6)
- select round(123.1234,2), round(123.1234,1), round(123.1234,0), round(125.1234,-1)
- 8、截取函数TRUNCATE(x,y):返回被舍弃的小数点后y位的数字x。
- select truncate(123.1234,1), truncate(123.1234,0), truncate(125.1234,-1)
- 9、获取随机数的函数RAND(),产生0-1之间的随机数
- select rand()
- 1、绝对值函数:ABS(x)
- 字符串函数
- 1、CHAR_LENGTH(str):返回字符串str的所包含【字符个数】
- select char_length('abc'),char_length('中国'),char_length('数据库')
- 2、LENGTH(str):返回字符串的【字节长度】
- gbk字符集,一个中文字符占2个字节
- utf8字符集,一个中文字符占3个字节
- select length('abc'),length('中国'),length('数据库')
- 3、字符串连接CONCAT(s1,s2,…):返回所有参数连接的结果,如果有参数为null则返回null
- 字符串连接CONCAT_WS(x,s1,s2,…):第一个参数x是其它参数的分隔符,返回使用第1个参与连接其余参数的字符串,【忽略null】
- select concat('a','b','c','d','f'),concat('a','b',null,'c','d','f')
- select concat_ws('a','b','c','d','f'),concat_ws('a','b',null,'c','d','f')
- 4、插入字符串INSERT(s1,x,len,s2)
- 返回字符串s1在位置x起始的子串且len个字符长的子串由字符串s2代替
- select insert('abcdef',1,2,'AAA') -- AAAcdef, abcdef-> ab cdef ->AAAcdef
- select insert('abcdef',1,1,'AAA') -- AAAbcdef
- select insert('abcdef',2,1,'AAA') -- aAAAcdef
- 5、lower(str):str转小写, upper(str):str转大写
- select lower('aBcD'),upper('aBcD')
- 6、 LEFT(s,n)返回字符串s最左边n个字符
- RIGHT(s,n)返回字符串s最右边n字符
- select left('aBcD',2), right('aBcD',1)
- 7、填充字符串函数:
- LPAD(s1,len,s2)返回字符串s1,其左边由字符串s2【填充到】len字符长度
- RPAD(s1,len,s2)返回字符串s1,其右边被字符串s2【填充到】len字符长度
- select lpad('abcdef',10,'*'), rpad('abcdef',10,'*')
- 8、ltrim()删除左空格,rtrim()删除右空格,
- select length(' abc '), length(ltrim(' abc ')), length(rtrim(' abc ')), length(rtrim(ltrim(' abc ')))
- ltrim(' abc ') = 'abc '
- rtrim(ltrim(' abc ')) = rtrim('abc ') = 'abc'
- TRIM(s1 FROM s),删除字符串s中两端所有的子字符串s1。
- select length(trim(' ' from ' abc '))
- select length(trim(' ' from ' ab c'))
- select trim('a' from 'abccba')
- 9、重复生成字符串函数:
- REPEAT(s,n)返回一个由重复的字符串s组成的字符串,字符串s的数目等于n
- select repeat('a',3)
- 10、字符串替换函数REPLACE(s,s1,s2):将s字符串中的s1字符替换成s2。
- select replace('abadefa','a','A')
- 11、比较字符串大小函数STRCMP(s1,s2):
- 若所有的字符串均相同,则返回0,
- 若根据当前分类次序,第一个参数小于第二个,则返回-1,其它情况返回1。
- select strcmp('abc','bcd'), strcmp('abc','aad'), strcmp('abc','abc')
- 12、获取子串函数:SUBSTRING(s,n,len):从s的第n个元素开始取长度为len的子串
- MID(s,n,len)其作用相同
- select substring('abcdef',2,3)
- 13、LOCATE(str1,str),str1字串,返回字串str1在str中的位置,0表示str不包含str1
- select locate('bc','abcdef'),locate('xbc','abcdef')
- 1、CHAR_LENGTH(str):返回字符串str的所包含【字符个数】
MySQL第三天0318 函数:数学函数 与 字符串函数
最新推荐文章于 2021-12-02 11:37:29 发布