Truth & Free

The truth shall make you free.

   :: 首页  :: 新随笔  ::  ::  :: 管理

13.1 字符串函数

对于针对字符串位置的操作,第一个位置被标记为1.

函数 功能
CONCAT(str1,str2...strn) 连接字符串str1、str2、...strn
INSERT(str,pos,len,newstr) 将字符串str从第pos位置开始,长度为len的字符串替换为字符串newstr
LOWER(str)/LCASE(str) 将字符串str中所有字符变为小写
UPPER(str)/UCASE(str) 将字符串str中所有字符变为大写
LEFT(str,x) 返回字符串str最左边的x个字符
RIGHT(str,x) 返回字符串str最右边的x个字符
LPAD(str,n,pad) 使用字符串pad对字符串str最左边进行填充,直到长度为n个字符长度
RPAD(str,n,pad) 使用字符串pad对字符串str最右边进行填充,直到长度为n个字符长度
LTRIM(str) 去掉字符串str开始处的空格
RTRIM(str) 去掉字符串str借书处的空格
TRIM(str) 去掉字符串str开始和结束处的空格
REPEAT(str,x) 返回字符串str重复x次的结果
REVERSE(str) 返回颠倒字符串str顺序的结果
REPLACE(str,substr,newstr) 使用字符串b替换字符串str中所有出现的字符串a
STRCMP(str1,str2) 比较字符串str和字符串str2
SUBSTRING(str,num,len) 返回字符串str从num位置起len个字符长度的字符串
MID(str,num,len)
LENGTH(str) 获取传入的参数str的长度
CHAR_LENGTH(str) 获取传入的参数str的字符数
FIND_IN_SET(str1,str2) 返回在str2中与str1相匹配的字符串的位置,str2中包含若干个用逗号分隔的字符串
FIELD(str,str1,str2...) 返回str1、str2、...中第一个与字符串str匹配的字符串的位置
LOCATE(str1,str) 返回参数str中字符串str1开始的位置
POSITION(str1 IN str)
INSERT(str,str1)
ELT(n,str1,str2...) 返回str1,str2...中第n个字符串
MAKE_SET(num,str1,str2...strn) 将num转换成二进制,从右到左读取值来选择字符串,值为1选择,值为0不选择

 

CONCAT(S1,S2,...SN) //如果其中一个参数为NULL,则返回值为NULL
CONCAT_WS(SEP,S1,S2,...SN)  //分隔符SEP会将各个字符串分隔开。当SEP的值为NULL时,返回NULL;当分隔符参数后存在NULL时,返回的结果将忽略NULL。
STRCMP(str1,str2)  //当str1大于str2,返回1;str1等于str2,返回0;str1小于str2,返回-1.

 

13.2 数学函数

函数 功能
ABS(x) 返回x的绝对值
FLOOR(x) 返回不大于x的最大整数值
CEIL(x) 返回不小于x的最小整数值
EXP(x) 返回e的x次方
SQRT(x) 返回非负数x的二次方根
LN(x) 返回x的自然对数
MOD(x,y) 返回x模y的值
RAND()/RAND(N) 返回0~1之间的随机数,N为种子
ROUND(x)/ROUND(x,d) 返回数值x四舍五入后的整数/d位小数
TRUNCATE(x,d) 返回数值x截断为d位小数,d可以为负数
FORMAT(x,d) 返回数值x四舍五入后有d位小数的字符串

 

13.3 日期和时间函数

   函数 功能
  CURDATE()  获取当前日期 格式:2015-07-07
CURRENT_DATE()
  CURTIME()  获取当前时间 格式:15:51:07
CURRENT_TIME()
  NOW()  获取当前的时间和日期 格式:2015-07-07 15:51:07
CURRENT_TIMESTAME()
LOCALTIME()
SYSDATE()
  UNIX_TIMESTAMP(date)  获取日期DATE的UNIX时间戳
  FROM_UNIXTIME()  获取UNIX时间戳的日期值
  UTC_DATE()  获取UTC日期
  UTC_TIME()  获取UTC时间
  EXTRACT(type from NOW())  获取日期和时间的各部分值
  TO_DAYS(date)  计算date与0000年1月1日相隔的天数
  FROM_DAYS(number)  0000年1月1日经历number天后的日期
  DATEDIFF(date1,date2)  date1和date2相隔的天数
  ADDDATE(date,n)  date加上n天后的日期
  SUBDATE(date,n)  date减去n天后的日期
* ADDDATE(d,INTERNAL expr type)  d加上一段时间后的日期,expr决定了时间的长度,type决定了操作的对象
ADDDATE(d,INTERNAL expr type)  d减去一段时间后的日期,expr决定了时间的长度,type决定了操作的对象
  ADDTIME(time,n)  time加上n秒后的时间
  SUBTIME(time,n)  time减去n秒后的时间
  WEEK()  返回当前年的第几周
WEEKOFYEAR()
DAYOFWEEK()  返回星期几,1~7,1表示星期日
WEEKDAY()  返回星期几,0~6,0表示星期一
DAYNAME()  返回英文表示的星期
  YEAR(date)  返回日期date的年份
  HOUR(time)  返回时间time的小时值
  MINUTE(time)  返回时间time的分钟值
  SECOND(time)  返回时间time的秒
  MONTH()  返回月份1~12
MONTHNAME()  返回月份的英文
  DAYOFYEAR()  年中第几天
DAYOFMONTH()  月中第几天

UTC(国际协调时间)返回的时间与当前时间相差几个时区。

*参数type的值

type的值 expr的表达式
YEAR YY
MONTH MM
DAY DD
HOUR hh
MINUTE mm
SECOND ss
YEAR_MONTH YY与MM之间用任意符号隔开
DAY_HOUR DD与hh之间用任意符号隔开
DAY_MINUTE DD与mm之间用任意符号隔开
DAY_SECOND DD与ss之间用任意符号隔开
HOUR_MINUTE hh与mm之间用任意符号隔开
HOUR_SECOND hh与ss之间用任意符号隔开
MINUTE_SECOND mm与ss之间用任意符号隔开

 

13.4 系统信息函数

函数 功能
VERSION() 返回数据库的版本号
DATABASE() 返回当前数据库名
USER() 返回当前用户名
LAST_INSERT_ID 返回最近生成的AUTO_INCREMENT的ID值
posted on 2015-07-06 10:54  andyzeng24  阅读(405)  评论(0编辑  收藏  举报