本文共 2306 字,大约阅读时间需要 7 分钟。
官方文档:
MySQL常用内置函数:
CHAR_LENGTH(str):返回值为传入字符串的长度,长度的单位为字符CONCAT(str1,str2,...):字符串拼接
CONCAT_WS(separator,str1,str2,...):可自定义连接符的字符串拼接
示例:mysql> select concat_ws('-','admin','123');+------------------------------+| concat_ws('-','admin','123') |+------------------------------+| admin-123 |+------------------------------+
CONV(num,from_base,to_base):进制转换
示例:将20从十进制转换为二进制mysql> select conv(20,10,2);+---------------+| conv(20,10,2) |+---------------+| 10100 |+---------------+1 row in set (0.00 sec)
INSERT(str,x_path,y_len,new_str):指定位置插入字符串
示例:mysql> select insert('1234567','2','3','new');+---------------------------------+| insert('1234567','2','3','new') |+---------------------------------+| 1new567 |+---------------------------------+1 row in set (0.00 sec)
INSTR(str,substr):返回字符串 str 中子字符串的第一个出现位置
LOWER(str):将字符串str变小写
UPPER(str):将字符串str变大写TRIM(str):返回字符串str并删除首尾部空格字符
LTRIM(str):返回字符串str并删除首部空格字符示例:mysql> select ltrim(' 1 2 3 ');+--------------------+| ltrim(' 1 2 3 ') |+--------------------+| 1 2 3 |+--------------------+
RTRIM(str):返回字符串str并删除尾部空格字符
LEFT(str,len):返回字符串str左边len个字符,len为null则返回null
RIGHT(str,len):返回字符串str右边len个字符,len为null则返回nullREPLACE(str,old_str,new_str):new_str字符串替换old_str字符串
REVERSE(str):返回字符串 str ,顺序和字符顺序相反REPEAT(str,count):返回重复count次数的字符串str示例:mysql> select repeat('hey',10);+--------------------------------+| repeat('hey',10) |+--------------------------------+| heyheyheyheyheyheyheyheyheyhey |+--------------------------------+
SUBSTRING(str,pos,len):返回字符串str中从位置pos起,长度为len的子字符串
RPAD(str,len,pad):用pad对str字符串从右边开始填充,直到len长度
LPAD(str,len,pad):用pad对str字符串从左边开始填充,直到len长度示例:mysql> select lpad('hello',10,'#');+----------------------+| lpad('hello',10,'#') |+----------------------+| #####hello |+----------------------+
MySQL自定义函数存储着一系列的sql语句,与存储过程类似,但不同的是函数只会返回一个值,而存储过程不仅可以有返回值,还有结果集的输出。
f1函数可以传入两个int类型的值,函数返回结果也是int类型delimiter \\create function f1( i1 int, i2 int)returns intBEGIN declare num int; set num = i1 + i2; return(num);END \\delimiter ;
#查询使用select f1(10,11);#sql语句块内赋值使用declare num int;select nid into num from student where nid = 1;
drop function func_name;
转载于:https://blog.51cto.com/jiayimeng/2174731