1,HEX(),十六进制转化;eg:select HEX('mysql'); select X'6D7973716C';
2,bit_count(),计算二进制数中包含1的个数;bit_or(),对两个数做二进制或运算;
3,BIN(),转化为2进制;OCT(),转为8进制
关于数学函数操作:
TRUNCATE(X,Y),直接舍弃Y后的小数位数。ROUND(X,Y),四舍五入。
MOD(X,Y),求余。
字符串操作:
LENGTH,计算字符串长度,LENGTH函数在读取char类型数据时会删除字符右边的空格.
CHAR_LENGTH(),计算字符串长度,一个多字节字符算作一个单字符
CONCAT(),合并字符串;CONTRACT_WS(),按指定分隔符合并字符串。
INSERT(S1,index,len,S2),字符串替换函数,将S1串中从index位置开始长度为len的子串替换为S2.
LPAD(S1,LEN,S2)返回字符串s1,其左边由字符串s2填补到len字符串长度。假如s1的长度大于len,则返回值被缩短至len字符。
LPAD()函数和RPAD()函数功能跟SQLSERVER里的 REPLACE()相似,不过功能更加强大
TRIM(S)删除字符串s两侧的空格
STRCMP(S1,S2),比较两字符串的大小,返回0则相等,S1<S2返回-1,S1>S2,返回1.不区分大小写,自动除去右侧空格。
locate(subStr,Str),position(subStr in Str),instr(Str,subStr),功能一致,返回子串所在位置,从1开始的Index;找不到(未匹配)则返回0.
ELT(N,STR1,STR2,STR3,STR4,...),返回指定位置的字符串;从1开始的字串。
FIELD(S,S1,S2,S3,S4,...),返回s在s1,s2,s3,s4,...中的位置。
FIND_IN_SET(S,S1),s在s1中的位置;s1是由","分隔开来,匹配由","的子串。
MAKE_SET(X,S1,S2,S3,...)返回由x的二进制数指定的相应位的字符串组成的字符串,s1对应比特1,s2对应比特10,s3对应比特100以此类推。
日期和时间函数
CURDATE(),CURRENT_DATE() 获取当前日期;
CURTIME(),CURRENT_TIME() 获取当前时间;
UTC_DATE(),UTC_TIME() 获取国际日期和时间。
NOW(),获取当前日期时间。
MONTHNAME(),返回日期对应月份的英文全名
MONTH(),返回对应月份,数字表示
QUARTER(),返回date对应的一年中的季度值,范围是从1~4
YEAR(),MONTH(),DAY(),HOUR(),MINUTE(),SECOND(),分别返回对应日期的年,月,日,时,分,秒。
TIME_TO_SEC(),将时间转为秒;SEC_TO_TIME(),将秒转为时间。
计算日期和时间的函数
DATE_ADD(),ADDDATE(date,interval expr type)
DATE_SUB(date,interval expr type),SUBDATE(date,interval expr type)
一些函数使用,可参见:http://www.cnblogs.com/lyhabc/p/3793524.html
http://www.cnblogs.com/lyhabc/p/3703994.html