MySQL中有很多有用的函数,而基本的函数可以分为字符串函数,日期和时间函数,数学函数,系统函数。下面是这些基本函数的例子。

一、字符串函数

-- mysql字符串函数 --

select instr('I am a student.','student'); -- 返回一个指定的字符串在另一个字符串的起始位置 ———— 8

select length('mysql'); -- 返回字符串长度 ———— 5

select lower('MySQL'); -- 把字符串的大写字母转化为小写字母 ———— mysql

select upper('mysql'); -- 把字符串的小写字母转化为大写字母 ———— MYSQL

select ltrim('    MySQL      '); -- 清除字符串左边的空格 ————MySQL        ————
    
select rtrim('    MySQL      '); -- 清除字符串右边的空格 ————     MySQL————

select right('我在学习mysql函数',2); -- 从字符串右边返回指定数目的字符 ———— 函数

select replace('嘻嘻哈嘻','哈','嘻'); -- 替换字符串中的字符 ———— 嘻嘻嘻嘻

select insert('ABCDEF',2,3,'啦啦嘻嘻哈哈'); -- 表示把第一个字符串的从第二个位置算起的三个字符替换成第二个字符串 ———— A啦啦嘻嘻哈哈EF


二、日期和时间函数

-- mysql日期函数及时间函数 --

select curdate(); -- 返回今天的日期 ———— 2016-04-29

select current_date(); -- 返回今天的日期 ———— 2016-04-29

select curtime(); -- 返回当前时间 ———— 11:38:13

select current_time(); -- 返回当前时间 ———— 11:38:13

select current_timestamp(); -- 返回当前日期及时间 ———— 2016-04-29 11:38:41

select datediff('2016/4/29','2016/4/2'); -- 返回两个日期之间相隔的天数 ———— 27

select adddate('2016-02-29',3); -- 返回某个日期几天之后的日期 ———— 2016-03-03

select dayname('2016-04-29'); -- 返回某个日期对应的是星期几 ———— Friday

select extract(day from '2016-04-09'); -- 返回某个日期是几号 ———— 9

 

三、数学函数

-- mysql数学函数 --

select abs(-4.5); -- 求绝对值 ———— 4.5

select ceiling(90.3); -- 返回大于或等于所给数字的最小整数———— 91

select floor(90.7); -- 返回小于或等于所给数字的最大整数 ———— 90

select power(2,3); -- 返回表达式的幂值 ———— 8

select round(3.1456,2); -- 将表示的四舍五入指定精度 ———— 3.15

select sign(-32); -- 对于正数返回1,对于负数返回-1,对于0返回0  ———— -1

select sqrt(16.89); -- 取浮点表达式的平方根 ———— 4.109744517606903

select rand(); -- 随机数

select convert(1231, char(3)); -- 数据类型转换,字符型,可带参数 : CHAR() ———— 123
select convert(1231,date); -- 数据类型转换,日期 DATE ———— 2000-12-31
select convert(1231,time); -- 数据类型转换,时间 TIME ———— 00:12:31
select convert(20160429,datetime); -- 数据类型转换,日期时间 DATETIME ———— 2016-04-29 00:00:00
select convert(1231.8090,signed); -- 数据类型转换,整数型 SIGNED,自动四舍五入 ———— 1232
select convert(-12,unsigned); -- 数据类型转换,无符号型 UNSIGNED ———— 18446744073709551604


四、系统函数

-- mysql系统函数 -- 

select charset('5回复9'); -- 返回字符串的字符集 ———— utf8

select version(); -- 返回数据库的版本号 ———— 5.6.24-log

select connection_id(); -- 返回服务器的连接数 ———— 3

select user(); -- 返回当前用户的名称 ———— root@localhost

select system_user(); -- 返回当前用户的名称 ———— root@localhost

select current_user(); -- 返回当前用户的名称 ———— root@localhost

select database(); -- 返回当前数据库名 ———— student_database

select collation('fjsjf898分开搭配9fs'); -- 返回字符创的字符排列方式 ———— utf8_general_ci