MySQL常用函数

来源:互联网 发布:域名两个a记录 编辑:程序博客网 时间:2024/05/16 12:21

函数能帮助用户做很多事情,比如说字符串的处理、数值的运算、日期的运算符,在这方面MySQL提供了多种内建函数帮助开发人员编写简单快捷的SQL语句,其中常用的函数有字符串函数,日期函数和数值函数。

字符串函数

字符串函数是最常用的一种函数,在MySQL中,字符串函数同样同样是最丰富的一类函数。

CONCAT(S1,S2,…,Sn):把传入的参数连接成一个字符串;

INSERT(str,x,y,instr):将字符串从x位置开始,y个字符常的字符串替换成字符串instr;

LOWER(str)和UPPER(str):将字符串转换为小写和大写;

LEFT(str,x)和RIGHT(str,x):分别返回字符串最左边的x字符或最右边的x个字符,如果第二个参数为NULL,则不返回任何字符串;

LPAD(str,x,pad)和RPAD(str,x,pad):用字符安串pad对str最左边和最右边进行填充,直到长度为n个字符串长度;

LTRIM(str)和RTRIM(str):去掉字符串左边和右边的空格;

REPEAT(str,x):返回str重复x次的结果;

REPLACE(str,a,b):用字符串b替换str中出现的字符串a;

STRCMP(s1,s2):比较字符串s1和字符串s2的ASCII值大小;

TRIM(str):去掉目标字符串的开头和结尾的空格;

SUBSTRING(str,x,y):返回从字符串x位置起y个字符长度的字符串;

数值函数

MySQL中另外一类很重要的函数就是数值函数,这些函数能处理很多数值方面的运算。

ABS(x):返回x的绝对值;

CEIL(x):返回大于x的最小整数;

FLOOR(x):返回小于x的最大整数;

MOD(x,y):返回x/y的模;

RAND():返回0~1内的随机数;

ROUND(x,y):返回参数x的四舍五入的有y位小数的值;

TRYNCATE(x,y):返回参数x截断为y位小数的结果;

日期和时间函数

CURDATE():返回当前日期,包含年月日;

CURETIME():返回当前时间,包含时分秒;

NOW():返回当前日期时间,包含年月日、时分秒;

UNIX_TIMESTAMP(date):返回日期date的UNIX时间戳;

FROM_UNIXTIME(unixtime):返回unixtime时间戳的日期值,和UNIX_TIMESTAMP(date)互为逆操作;

WEEK(DATE)和YEAR(DATE):前者返回所给的日期是一年当中的第几周,后者返回所给的日期是哪一年;

HOUR(time)和MINUTE(time):前者返回所给时间的小时,后者返回所给时间的分钟;

MONTHNAME(date):返回日期的英文名称;

DATE_FORMAT(date,fmt):按字符串fmr格式化日期date值,此函数能够按指定的格式显示日期。例如DATE_FORMAT(NOW(),’%Y,%M,%D’) 返回年、月、日;

DATE_ADD(date INTERVAL expr type):返回所给日期相差INTERVAL时间段的日期。其中INTERVAL是间隔类型的关键字,expr是一个表达式。type是间隔类型 例如DATE_ADD(NOW(),INTERVAL,31 DAY),返回31天后的日期;

DATE_DIFF(date1,date2):用于计算两个日期之间相差的天数;

流程函数

流程函数也是很常用的一类函数,用户可以使用这类函数在一个SQL语句中实现条件选择,这样做能提高语句的效率。

IF(value,t,f):如果value为真返回t,否则返回f;

IFNULL(value,value2):如果value1不为空,返回value1,否则返回value2;

CASE WHEN [value1] THEN [result] … ELSE [default]END:如果value1为真,返回result,否则返回default;

CASE [expr] WHEN [value1] THEN [result1] … ELSE [default] END:如果expr等于value1,返回result1,否则返回default;

其他常用函数

DATABASE():返回当前的数据库名;

VERSION():返回当前的数据库版本;

USER():返回当前登录用户名;

INET_ATON(IP):返回IP地址的网络字节序列表示;

INET_NTON(num):返回网络字节代表的IP地址;

PASSWORD(str):返回字符串的加密版本,一个41位长的字符串;

MD5(str):返回字符串str对应的MD5值;

0 0
原创粉丝点击