本文对MySQL常用函数进行了分类整理:日期和时间函数、数学函数、字符串函数、条件判断函数、系统信息函数、加密函数等,大家可以作为字典查询和使用。  

一.日期和时间函数

1.NOW()

作用:返回当前的日期和时间

示例:

MySQL的year函数 mysql年份函数_字符串

2.DATE(date)

作用:返回当前日期

示例:

MySQL的year函数 mysql年份函数_MySQL的year函数_02

3.CURDATE()

作用:返回当前日期

示例:

MySQL的year函数 mysql年份函数_UNIX_03

4.CURTIME()

作用:返回当前时间

示例:

MySQL的year函数 mysql年份函数_字符串_04

5.UNIX_TIMESTAMP(date)

作用:返回日期date的UNIX时间戳

示例:

MySQL的year函数 mysql年份函数_字符串_05

6.FROM_UNIXTIME()

作用:返回UNIX时间戳的日期值

示例:

MySQL的year函数 mysql年份函数_MySQL的year函数_06

7.WEEK(date)

作用:返回日期date为一年中的第几周

示例: 

MySQL的year函数 mysql年份函数_当前日期_07

8.YEAR(date)

作用:返回日期date的年份

示例:

MySQL的year函数 mysql年份函数_UNIX_08

9.HOUR(time)

作用:返回日期time的小时值

示例:  

MySQL的year函数 mysql年份函数_当前日期_09

10.MINUTE(time)

作用:返回日期time的分钟值

示例:

MySQL的year函数 mysql年份函数_UNIX_10

11.MONTHNAME(date)

作用:返回date的月份名

示例:

MySQL的year函数 mysql年份函数_UNIX_11

12.DATEDIFF(time1time2)

作用:返回起始时间time1和终止时间time2之间的天数,不能定位到小时、分钟和秒

示例:

MySQL的year函数 mysql年份函数_字符串_12

13.TIMESTAMPDIFF(type, time1, time2)

作用:返回起始时间time1和终止时间time2之间,统计的时间差值,按时间类型type,可以精确到天DAY、小时HOUR,分钟(MINUTE)和秒(SECOND)

示例:

MySQL的year函数 mysql年份函数_MySQL的year函数_13

  

14.DATE_FORMAT(date,fmt)

作用:返回按照字符串fmt格式化的日期date值

示例:

MySQL的year函数 mysql年份函数_字符串_14

15.DATE_ADD(date,INTERVAL,expr,type)

作用:返回一个日期或者时间值加上一个时间间隔的时间值

示例:

MySQL的year函数 mysql年份函数_字符串_15

16.QUARTER(date)

作用:返回date一年中的季度,范围1到4

示例:

MySQL的year函数 mysql年份函数_MySQL的year函数_16

17.DAYNAME(date)

作用:返回date对应的工作日名称

示例:

MySQL的year函数 mysql年份函数_MySQL的year函数_17

18.DAYOFWEEK(date)

作用:接受1个参数,即DATE或DATETIME值。 返回一个整数,范围从1到7,表示星期日到星期六

示例:

MySQL的year函数 mysql年份函数_字符串_18

19.DAYOFYEAR(date)

作用:接受1个参数,即DATE或DATETIME值。返回一年中的第几天,范围为 1~366

示例:

MySQL的year函数 mysql年份函数_MySQL的year函数_19

二.数值函数

1.ABS(x)

作用:返回x的绝对值

示例:

MySQL的year函数 mysql年份函数_MySQL的year函数_20

2.CEIL(x)

作用:返回大于x的最小整数

示例:

MySQL的year函数 mysql年份函数_UNIX_21

3.FIOOR(X)

作用:返回不大于x的最大整数

示例:

MySQL的year函数 mysql年份函数_当前日期_22

4.CEILING(X)

作用:返回不小于x的最小整数

示例:

MySQL的year函数 mysql年份函数_MySQL_23

5.MOD(x,y)

作用:返回x/y的模

示例:

MySQL的year函数 mysql年份函数_UNIX_24


MySQL的year函数 mysql年份函数_UNIX_25

6.RAND(x)

作用:返回0~1之间任意随机值,当传入整数参数时,可用来产生重复序列

示例:

MySQL的year函数 mysql年份函数_当前日期_26

7.ROUND(x,y)

作用:返回参数x的四舍五入的有y位小数的值

示例:

MySQL的year函数 mysql年份函数_MySQL_27

8.TRUNCATE(x,y)

作用:返回数字x截断为y位小数的结果

示例:

MySQL的year函数 mysql年份函数_字符串_28

三.字符串函数

1.ASCII(str)

作用:返回字符串str的最左面字符的ASCII代码值。如果str是空字符串,返回0。如果str是NULL,返回NULL

示例:

MySQL的year函数 mysql年份函数_当前日期_29

2.Concat()

作用:连接字符串的函数,如果存在参数是NULL,则返回NULL

示例:

MySQL的year函数 mysql年份函数_MySQL_30

3.INSERT(str,x,y,instr)

作用:将字符串str从第x位置开始,y个字符长的子串替换为字符串instr

示例:

MySQL的year函数 mysql年份函数_MySQL的year函数_31

4.LOWER(str)

作用:把字符串转换为小写

5.UPPER(str)

作用:把字符串str转换为大写

示例:

MySQL的year函数 mysql年份函数_当前日期_32

6.LEFT(str,x)

作用:返回字符串左边的第x个字符,如果第二个参数是NULL,那么将不返回任何字符串

7.RIGHT(str,y)

作用:返回字符串右边的第y个字符。如果第二个参数是NULL,那么将不返回任何字符串

示例:

MySQL的year函数 mysql年份函数_MySQL_33

8.LPAD(str,n,pad)

作用:用字符串pad对str最左边进行填充,直到长度为n个字符长度

9.RPAD(str,n,pad)

作用:用字符串pad对str最右边进行填充,直到长度为n个字符长度

示例:

MySQL的year函数 mysql年份函数_MySQL_34

10.LTRIM(str)

作用:去掉字符串左侧的空格

11.RTRIM(str)

作用:去掉字符串右侧的空格

示例:

MySQL的year函数 mysql年份函数_MySQL_35

12.REPEAT(str,x)

作用:返回str重复x次的结果

示例:

MySQL的year函数 mysql年份函数_MySQL的year函数_36

13.REPLACE(str,a,b)

作用:用字符串b替代字符串str中所有出现的字符a

示例:

MySQL的year函数 mysql年份函数_当前日期_37

14.STRCMP(s1,s2)

作用:比较s1和s2的ASCII码值的大小

示例:

MySQL的year函数 mysql年份函数_MySQL_38

15.TRIM(str)

作用:去掉目标字符串开头和结尾的空格

示例:

MySQL的year函数 mysql年份函数_UNIX_39

16.INSTR(str,substr)

作用:返回子串substr在字符串str中的第一个出现的位置

示例:

MySQL的year函数 mysql年份函数_当前日期_40

17.SUBSTRING(str,x,y)

作用:返回从字符串str中的第x位置起y个字符长度的字串

示例:

MySQL的year函数 mysql年份函数_当前日期_41

18.SUBSTRING_INDEX(str,delim,count)

作用:返回从字符串str中,按delim分隔符切割字符串(str:要处理的字符串,  delim:分隔符,  count:计数)

示例:

MySQL的year函数 mysql年份函数_UNIX_42

19.LENGTH(str)

作用:返回字符串str的长度

示例:

MySQL的year函数 mysql年份函数_字符串_43

20.REVERSE(str)

作用:返回颠倒字符顺序的字符串str

示例:

MySQL的year函数 mysql年份函数_UNIX_44

四.流程函数

示例表student原始数据如下:

MySQL的year函数 mysql年份函数_MySQL_45

1.IF(value,t,f)

作用:如果满足value,就显示t,否则显示f

示例:

MySQL的year函数 mysql年份函数_UNIX_46

2.Ifnull(value1,value2)

作用:将null值用value2替代

示例:

MySQL的year函数 mysql年份函数_UNIX_47

 

3.CASE <表达式>

 

作用:两种写法,此处省略详解。  


CASE <表达式> WHEN <值1> THEN <操作> WHEN <值2> THEN <操作> ... ELSE <操作> END CASE;


 


CASE
WHEN <条件1> THEN <命令>
WHEN <条件2> THEN <命令>
...
ELSE commands
END CASE;

 

五.系统信息函数

1.DATABASE()

作用:返回当前数据库名称

示例:

MySQL的year函数 mysql年份函数_UNIX_48

2.Version()

作用:返回当前数据库版本信息

示例:

MySQL的year函数 mysql年份函数_MySQL_49

3.USER()

作用:返回当前登录用户名

示例:

MySQL的year函数 mysql年份函数_当前日期_50

4.CONNECTION_ID()

作用:返回当前连接的Thread ID

示例:

MySQL的year函数 mysql年份函数_字符串_51

5.CHARSET(str)

作用:返回字符串str的字符集,一般情况这个字符集就是系统的默认字符集

示例:

MySQL的year函数 mysql年份函数_字符串_52

6.COLLATION(str)

作用:返回字符串str的字符排列方式

示例:

MySQL的year函数 mysql年份函数_MySQL的year函数_53

六.加密函数

1.Password(str)

作用:返回字符串str的加密版本

示例:

MySQL的year函数 mysql年份函数_字符串_54

2.MD5(str)

作用:返回字符串str的MD5值,常用来对应用中的数据进行加密

示例:

MySQL的year函数 mysql年份函数_MySQL_55

3.ENCODE(str,pswd_str)

作用:可以使用字符串pswd_str来加密字符串str。加密的结果是一个二进制数,必须使用BLOB类型的字段来保存它
示例:

MySQL的year函数 mysql年份函数_字符串_56

4.DECODE(crypt_str,pswd_str)

作用:可以使用字符串pswd_str来为crypt_str解密。crypt_str是通过ENCODE(str,pswd_str)加密后的二进制数据。字符串pswd_str应该与加密时的字符串pswd_str是相同的

示例:

MySQL的year函数 mysql年份函数_MySQL的year函数_57

七.其他函数

1.INET_ATON(IP)

作用:返回ip地址的数字表示

示例:

MySQL的year函数 mysql年份函数_MySQL的year函数_58

2.INET_NTOA(num)

作用:返回数字代表的ip地址

示例:

MySQL的year函数 mysql年份函数_UNIX_59