整理mysql常用内置函数
2016-11-03 19:31
267 查看
用在select语句、子句 where ,order by having等
用在update 和delete 中
函数中可将字段名作为变量来用,值是这个列对应的每一条记录。
查询元数据 information_schema
concat('abc','def',name) //整列可以链接
concat_ws(separator,str1,str2) 使用sep链接str1和str2
insert("abcdef",1,2,"a") //将 abcdef的0开始2个长度的字符串替换为a,结果为 acdef
select insert(name,1,2,"aa")from users;
lower(str) upper(str) //比较比较常用
select name from users where lower(name)=='aaa';
left(str, size) right(str,size) mid(str,pos,size)
locate(substr,str,[start]) //从str的start位置开始查找substr
substring(str,[from],pos,len)
repeat('MySQL',3) //得到 mysqlmysqlmysql
replace(str,from_str,to_str) //替换字符串
update ta1 SETname=REPLACE(name,
'gbin1.com','gbtags.com')WHERE name LIKE'%John%';
lpad(sr,length,padstr) //str的左边由padstr补全到length长度 rpad
trim(str) ltrim(str) rtrim(str) //去除空格
reverse(str) 翻转
space(len) // 返回len长度的空格
strcmp(s1,s2)
ceil(x)
floor(x)
mod(n,m) ( n%m )
PI() 返回pi的值
rand() 返回0,1之间的随机
round(x,y) 返回x 四舍五入的,y位小数的值
sign(x) 返回x的符号 -1 0 1
truncate(x,y) 返回x截断为y位小数的值
curdate() 当前日期
now() 日期 和时间
unix_timestamp(now()) timestamp格式的毫秒数
from_unixtime(tempstap) 将timestamp转换为正常日期
hour() week() date() minute() , monthname() 如:
SELECT DATE('2003-12-31 01:02:03') , minute(curtime());
data_format(now(),'%y-%m-%d') 格式化日期
select if(age>18, '成人','儿童')
ifnull(value1,value2) //如果value1不为空返回value1,否则返回 value2 ,用来替换空值,如
ifnull(age,0)
case value when[compare-value] then [result1].. else [default] end //类似于switch语句
select case age when 60 then 'old' else 'man' end
version()
user() 当前用户
inet_aton(ip) inet_ntoa(num)
password() //用于mysql自己的认证,如创建mysql用户,不建议用于应用程序,算法会改变
password('12345')
md5() //对应用系统中用户密码加密
md5('12345')
正则表达式 见 参考G MySQL正则表达式
SELECT 'fo\nfo' REGEXP'^fo$' 返回0
用在update 和delete 中
函数中可将字段名作为变量来用,值是这个列对应的每一条记录。
查询元数据 information_schema
1. 字符串
length(name) //返回长度concat('abc','def',name) //整列可以链接
concat_ws(separator,str1,str2) 使用sep链接str1和str2
insert("abcdef",1,2,"a") //将 abcdef的0开始2个长度的字符串替换为a,结果为 acdef
select insert(name,1,2,"aa")from users;
lower(str) upper(str) //比较比较常用
select name from users where lower(name)=='aaa';
left(str, size) right(str,size) mid(str,pos,size)
locate(substr,str,[start]) //从str的start位置开始查找substr
substring(str,[from],pos,len)
repeat('MySQL',3) //得到 mysqlmysqlmysql
replace(str,from_str,to_str) //替换字符串
update ta1 SETname=REPLACE(name,
'gbin1.com','gbtags.com')WHERE name LIKE'%John%';
lpad(sr,length,padstr) //str的左边由padstr补全到length长度 rpad
trim(str) ltrim(str) rtrim(str) //去除空格
reverse(str) 翻转
space(len) // 返回len长度的空格
strcmp(s1,s2)
2. 数值函数
abs(x)ceil(x)
floor(x)
mod(n,m) ( n%m )
PI() 返回pi的值
rand() 返回0,1之间的随机
round(x,y) 返回x 四舍五入的,y位小数的值
sign(x) 返回x的符号 -1 0 1
truncate(x,y) 返回x截断为y位小数的值
3. 日期
curtime() 当前时间curdate() 当前日期
now() 日期 和时间
unix_timestamp(now()) timestamp格式的毫秒数
from_unixtime(tempstap) 将timestamp转换为正常日期
hour() week() date() minute() , monthname() 如:
SELECT DATE('2003-12-31 01:02:03') , minute(curtime());
data_format(now(),'%y-%m-%d') 格式化日期
4. 流程控制
if(value, t,f) //value为真返回t,否则返回fselect if(age>18, '成人','儿童')
ifnull(value1,value2) //如果value1不为空返回value1,否则返回 value2 ,用来替换空值,如
ifnull(age,0)
case value when[compare-value] then [result1].. else [default] end //类似于switch语句
select case age when 60 then 'old' else 'man' end
5. 其他函数
database() 返回数据库version()
user() 当前用户
inet_aton(ip) inet_ntoa(num)
password() //用于mysql自己的认证,如创建mysql用户,不建议用于应用程序,算法会改变
password('12345')
md5() //对应用系统中用户密码加密
md5('12345')
6. 字符串查找
% 多个, _ 一个, \%和\_是字符转义正则表达式 见 参考G MySQL正则表达式
SELECT 'fo\nfo' REGEXP'^fo$' 返回0
相关文章推荐
- mysql常用命令(不断整理中)
- [整理版]ASP常用内置函数
- 整理了下MySQL内置函数表,包括字符串函数、数学函数和日期时间函数
- 自整理MYSQL常用命令+短精简说明
- MySQL常用语法(整理后)
- 收集整理的ASP的常用内置函数
- MYSQL常用命令[收集整理-也方便自己用,哈哈]
- MySQL常用语法(整理后)
- mysql 常用语句整理
- MySQL语法常用大全_自己整理的学习笔记
- [整理版]ASP常用内置函数
- MySQL 常用命令整理
- MySQL常用内置函数
- 一些常用的mysql命令收集整理
- mysql 常用命令整理
- 收集整理ASP的常用内置函数
- 整理了下MySQL内置函数表,包括字符串函数、数学函数和日期时间函数
- mysql 常用命令用法总结脚本之家整理版
- 收集整理一些常用的MySQL命令
- mysql 常用命令整理 - 持续更新