1.数学函数
蓝色字体为必会函数
ABS(x):返回x的绝对值
CEIL(x),CEILIN(x):返回不小于x的最小整数值
Floor(x):返回不大于x的最大整数值
Rand():返回0~1的随机数
Rand(x):返回0~1的随机数,x值相同时返回随机数相同
Sign(x):返回参数作为-1,0或1的符号,该符号取决于x的值为负、零或正
Pi():返回∏的值,默认的显示小数位数是7位
truncate(x,y):返回数值x保留到小数点后y位的值
Round(x):返回离x最近的整数
round(x,y):返回数值x保留到小数点后y位的值,但要四舍五入
Pow(x,y),power(x,y):返回x的y乘方的结果值
Sqrt(x):返回非负数x的二次方根
Exp(x):返回e的x乘方后的值
Mod(x,y):返回x除以y以后的余数
Log(x):返回x的基数为2的对数
Log10(x):返回x的基数为10的对数
Radians(x):将角度转换为弧
Degrees(x):返回参数x,该参数由弧度被转化
Sin(x):返回x正弦,其中x在弧度中被给定
Asin(x):返回x的反正弦,即正弦为x的值
Cos(x):返回x的余弦,其中x在弧度中被给定
Acos(x):返回x的反余弦,即余弦为x的值
Tan(x):返回x的反正切,正切为x的值
Cot(x):返回(x):返回x的余切
2.字符串函数
Char_length(s):返回字符串s的字符数
Length(s):返回值为字符串s的长度,单位为字节
Concat(s1,s2,…):返回结果为连接参数产生的字符串
Insert(s1,x,len,s2):将字符串s2替换s1的x位置开始长度为len的字符串
Upper(s),ucase(s):将字符串s的所有字母都变成大写字母
Lower(s),lcase(s):):将字符串s的所有字母都变成小写字母
Left(s,n):从字符串s开始的前n个字符
Right(s,n):从字符串s开始,返回右边的n个字符
Lpad(s1,len,s2):返回字符串s1,其左边由字符串s2填补到len字符长度,假如s1的长度大于len,则返回值被缩短至len字符
Rpad(s1,len,s2):返回字符串s1,其右边由字符串s2填补到len字符长度,假如s1的长度大于len,则返回值被缩短至len字符
Ltrim(s):返回字符串s,其引导空格字符被删除
Rtrim(s):返回字符串s,结尾空格字符被删除
Trim(s):去掉字符串s开始处和结尾处的空格
Trim(s1 from s):去掉字符串s中开始处和结尾处的字符串s1
Repeat(s,n):将字符串s重复n次
Space(n):返回n个空格
Replace(s,s1,s2):用字符串s2替代字符串s中的字符串s1
Strcmp(s1,s2):比较字符串s1和s2
Substring(s,n,len):获取从字符串s中的第n个位置开始长度为len的字符串
Locate(s1,s),position(s1 in s):从字符串s中获取s1的开始位置
Instr(s,s1):从字符串s中获取s1的开始位置
Reverse(s):将字符串s的顺序反过来
Elt(n,s1,s2,…):返回第n个字符串
3.日期时间函数
Curdate(),current_date():返回当前日期
Curtime(),current_time():返回当前时间
now(),current_timestamp(),localtime(),sysdate(),localtimestamp():返回当前日期和时间
Month(d):返回日期d中的月份值,范围是1~12
Dayname(d):返回日期d是星期几
Dayofweek(d):返回日期是星期几,1表示星期日
Week(d):计算机日期d是本年的第几个星期
Dayofyear(d):计算日期d是本年的第几天
Dayofmonth(d):计算日期d是本月的第几天
Year(d):返回日期的年份值
Quarter(d):返回日期d是第几季度,范围是1~4
Hour(t):返回时间t中的小时值
Minute(t):返回时间t中的分钟值
Second(t):返回时间t中的秒钟值
Extract(type from d):从日期d中获取指定的值,type指定返回的值,如year,hour等时间转换为秒
Time_to_sec(t):将时间t转换为秒
Datediff(d1,d2):计算日期d1~d2之间相隔的天数
Adddate(d,n): 计算起始日期d加上n天的日期
Adddate(d,interval expr type):计算起始日期d加上一个时间段后的日期 Adddate(d,interval 数值 年或月或日)
Subdate(d,n):计算起始日期d减去n天后的日期
Subdate(d,interval expr type):计算起始日期d减去一个时间段后的日期
Addtime(t,n):计算起始时间t加上n秒的时间
Subtime(t,n):计算起始时间t减去n秒的时间
Get_format(type,s):根据字符串s获取type类型数据的显示格式
4.条件判断函数
1.If(expr,v1,v2):如果表达式expr成立,则执行v1,否则执行v2
2.Ifnull(v1,v2):如果v1不为空,则显示v1的值,否则显示v2的值
3.Case when expr1 then v1 [when expr2 then v2…] [else wn] end: case表示函数开始,end表示函数结束
4.Case expr when e1 then v1 [when e2 then v2…] [else wn]end:case表示函数开始,end表示函数结束
5.系统信息函数
Version():获取数据库版本号
Connection_id:获取服务器的连接数
Database(),schema():获取当前数据库名
User(),system_user(),session_user():获取当前用户
Current_user(),current_user:获取当前用户
Charset(str):获取字符串str的字符集
Collation(str):获取字符串str的字符排列方式
Last_insert_id():获取最近生成的auto_increment值
6.加密函数
Password(str):对字符串str进行加密。经此函数加密后的数据是不可逆的。其经常用于对用户注册的密码进行加密处理
**Md5(str):对字符串str进行加密。经常用于对普通数据进行加密** 最好用
Encode(str,pswd_str):使用字符串pswd_str来加密字符串str
Decode(crypt_str,pswd_str):使用字符串pswd_str来为crypt_str解密
7.其他函数
Format(x,n):将数字x进行格式化,将x保留到小数点后n位
Ascii(s): 返回字符串s的第一个字符的ascii码
Conv(x,f1,f2):将x从f1进制数变成f2进制数
Inet_aton(ip):可以将ip地址转换为数字表示
Inet_ntoa(n):可以将数字n转换成ip的形式
8.转换函数
一般不常用
cast 可以用来改变类型,用 cast() 和 convert() 函式。两个函式相同,但是不同的语法构造。cast(expression AS type)convert(expression, type)cast() 是依照 ANSI 的规格,convert() 是依照 ODBC 的规格。类型可以是 BINARY, CHAR, DATE, DATETIME,
SIGNED (INTEGER), 和 UNSIGNED (INTEGER)。通常 MySQL 会自动帮你改变类型。
MySQL类型转换函数参数 : CAST(xxx AS 类型) , CONVERT(xxx,类型) 这个类型 可以是以下值其中的 一个:
BINARY[(N)]
CHAR[(N)]
DATEDATETIMEDECIMAL
SIGNED [INTEGER]
TIMEUNSIGNED[INTEGER]
整数 : SIGNED 无符号整数 : UNSIGNED二进制,同带binary前缀的效果 : BINARY 字符型,可带参数 : CHAR() 日期 : DATE 时间: TIME 日期时间型 : DATETIME 浮点数 : DECIMAL