mysql函数

greatest()取最大值
least()去最小值
abs()取绝对值
sqrt()取平方根
mod(x,y)求余
ceil(-)取整 返回值为不小于该值
ceiling(+)取整 返回值为不小于该值
floor(x)取整 返回值不大于该值
rand()取随机数
round()四舍五入 当为2个参数的时候 后者为保留位数 为负数时则往右进位
truncate()取舍 当为2个参数的时候 后者为保留位数 为负数时则往右进位
sign()返回参数符号
pow(x,y)  power(x,y) 幂运算
char_length()计算字符串字符个数
length()计算字符串长度
concat()连接字符串
concat_ws()按第一个参数连接
insert(s1,x,length,s2) 起始位置x开始后字符长度length 替换为 s2
lower() lcase() 可将大写小写
upper() ucase() 将小写大写
left(str,num)左开始取num个字符
right(str,num) 右开始取num个字符
lpad(s1,len,s2) 左边字符由s2填补到len长度  如果 s1大于len 则返回值缩小到len
rpad(s1,len,s2) 右边字符由s2填补到len长度  如果 s1大于len 则返回值缩小到len
ltrim()左侧空格删除
rtrim()右侧空格删除
trim()删除2侧空格
trim(s1 from s)删除s中两端的所以字符串s1
repeat(s,n)重复输出n次s
space(n)输入由n个空格组成的字符串
replace(s,s1,s2)字符串s中s1替换为s2
strcmp(s1,s2)如果字符串长度相同 返回0  如果第一个参数小于第二个为-1 其余为1
substring(s,n,len) 与mid函数相同 从右数 第n的个字符截取len个字符  如果没有len且n为负数 则为倒数第n个字符截取
substring_index(str,delime,count) str:要处理的字符串  delim:分隔符  count:计数
locate(str1,str) position(str1 in str) instr(str,str1)  查找str1在str 的开始位置
reverse(s) 将字符串反转
field(s,s1,s2...) 返回s在后边列表第一次出现的位置
elt(n,s1,s2...)返回出现位置为n的字符串
find_in_set(s1,s2)s2字符串分别以,隔开 返回s1所在列表位置
make_set(x,s1,s2...)取x为二进制相应位指定的字符串 (具体百度) 
curdate()和current_date()获取当前日期  +0 转换为数值
curtime()current_time()获取当前时间       +0 转换为数值
current_timestamp(),localtime(),now(),sysdata() 获取当前日期和时间
unix_timestamp() 获取当前时间戳 如果有参数则转换为时间戳 使用from_unixtime()转换时间
utc_date() 返回世界标准时间日期值      +0 转换为数值
utc_time()  返回世界标准时间时间值     +0 转换为数值
month(data) 获取月份
monthname(data)获取月份英文全名
dayname(data) 获取星期的函数返回为英文  dayofweek(data) 返回一周索引 1为周日
weekofyear(data) 获取当天在一年中是第几个星期
dayofyear(data) 获取当前在一年中第几天
dayofmonth(data) 获取当前在一月中第几天
year(data)获取当前年份
quarter(data)获取一年中的季度
minute(data)获取时间的分钟数
second(data)获取时间的秒数
time_to_sec(data)时间转换为秒(只是时间)
sec_to_time(data)秒转换为时间(只是时间)
extract(type from data) 提取时间的一部分
date_add(date,interval expr type) expr 是一个字符串 如加1秒 interval 1 second 执行的+操作
date_sub(date,interval expr type)expr 是一个字符串 如减1秒 interval 1 second 执行的-操作
addtime(date,expr) 将expr值添加到date
subtime(date,expr) 将expr值减掉date
date_format(date,format)格式化日期
get_format(val_type,format_type) 返回日期的显示格式 和date_format联合使用
if(expr,v1,v2) 如果expr表达式为真返回v1 否则返回v2
ifnull(v1,v2) 如果v1为空则返回v2 否则返回v1
case expr when v1 then r1 [when v2 then r2] [lese rn] end      expr为值 和v*匹配  的r*
version() 查询mysql版本号
connection_id()返回mysql当前连接的次数  每个连接都有各自唯一id
show processlist; 默认100条  show full processlist; 显示全部   结果为哪些进程在运行
datebase() 和 schema() 返回utf8字符集的当前数据库
user()  current_user() system_user() session_user()  获取当前验证的用户和主机组合 一般情况下 返回值相同
charset(str)  获取字符串的字符集
 collation(str) 获取字符串排列方式
last_insert_id()  获取最后一个 insert 或者 update 为auto_increment 列设置的第一个发生的值 
password(str) 加密函数
md5(str) 加密函数
encode(str,pswd_str) 使用pswd_str作为密码,加密str
decode(crypt_str,pswd_str) 使用pswd_str作为密码,解密密crypt_str
format(x,n)  将数字x格式化  以四舍五入的方式保存小数点后n位
conv(n,from_base,to_base)  n为值 from_base 为当前n进制  转换为to_base进制
inet_aton(ip) 将IP转换为数值网络地址
inet_ntoa(ip) 将数值网络地址转换为IP
get_lock(str,timeout) 使用字符串str给定的名字得到一个锁,超时为timeout秒 返回为1为成功得到锁
release_lock(str) 解开被get_lock()获取的,用字符串str所命名的锁  返回为1为成功解锁
is_free_lock(str)  正在使用返回0 没有使用返回1 出现错误为null
is_used_lock(str) 被封锁 返回使用该所的客户端的链接标识符(connection id) 否则为null
benchmark(count,expr) 重复执行count次 执行表达式expr  返回值为0时为非常快
convert(…using…)  用来转换数据字符集  如convert(‘aaa’ using ‘utf8’)
cast(x,as type) 转换数据的类型 convert(x,type) 也可以