mysql函数补充

学习的语句

/**************字符串函数*********************/
select insert('ring',2,0,'ok'); /*从2的地方插入ok字符,插入时替换0个字符*/
select repeat('ring',2); /*重复输出字符串2次*/
select REVERSE('ring'); /*反写*/
select mid('ring',2,2);/*从某个位置取某个长度的字符*/
select instr('ring','i');/*查找字符*/
select replace('very good','o','O'); /*替换所有的字符*/
select LENGTH('very good'); /*返回字符串长度*/
select ascii('abc');/*返回最左边的字符ascii码*/
select space(3);/*产生3次空格*/
select CONCAT('ri','n','g',' wang'); /*组合成字符串*/
select lcase('RING'); /*小写*/
select ucase('ring'); /*转换成大写*/
select substring_index(user(),'@',1); /*提取当前的用户名,表示提取@左边第一出现的字符,如果后面的为负数则提取右边的字符*/

/**********************数学函数******************/
select conv('ee',16,10); /*将'ee'从16转换成10,16和10可以是任意进制*/
select bin(10); /*2进制*/
select hex(10); /*16进制*/
select oct(10); /*10进制*/
select round(12.5678,2); /*将小数保留两位,四舍五入*/
select round(123.8767); /*转换为整形,因为没有小数位*/
select char(65,66,99); /*将ascill码组合成字符串*/
select least(3,6,5,1); /*最小数字*/
select greatest(6,3,2,8,3,1);  /*最大数字*/
select power(2,3); /*2的3次幂*/
select sqrt(9); /*开方*/
select pi(); /*圆周率 */
select RAND(11); /*返回0-1的随机数,指定种子,每次的数都一样*/
select rand();  /*没有指定种子,默认为时间为种子*/

/********日期时间函数*****************/
select now();
select to_days('2008-07-6'); /*转换成天数*/
select to_days('2008-8-8')-to_days(now());/*相差的天数*/
select day(now());/*该日期中的时,分,秒,天,月,年 hour(),minute(),second(),month(),year()*/
select dayofyear('2008-2-2'); /*返回该年已过的天数*/
select monthname(now()); /*返回月的英文名*/
select dayname(now());/*星期几的英文名*/
select week(now(),0); /*表示当前的日期是第几周,后面的数字0表示从周日开始算,1表示从周一开始算*/
select from_days(734215); /*返回该天数表示的日期*/
select DATEDIFF(now(),'2008-8-8'); /*前面的日期减去后面的日期所得的天数*/
select date_add(now(),interval 2 day); /*表示给当前的日期加2天*/
select date_add(now(),interval 2 month); /*表示给当前的日期加2个月*/
select CURRENT_DATE(); /*当前日期,短格式*/
select CURRENT_TIME();/*当前的时间*/
select current_user();/*当前的用户*/
select date_format(now(),'%Y-%m-%d %H:%i:%s');/*日期的格式,Y表示4位,H表示24小时制*/
select date_format(now(),'%T'); /*只显示时间,没有日期,T表示24小时制,r表示12小时制*/
select date_format('2008-08-08 14:08:08','%Y-%m-%d'); /*显示日期部分,时间不要*/
select date_format(now(),'%Y-%m-%d %H:%i:%s %W'); /*带日期的*/
select date_format('2008-8-8','%W');/*该日期的星期几*/

/***********其他函数****************/
select database();/*返回当前的数据库名字*/
select substring_index(CURRENT_USER(),'@',1);/*提取当前的用户名*/
select password('123'); /*mysql的加密方式*/
select MD5('123');/*32位的md5加密*/
select LAST_INSERT_ID();/*返回最后一次自动产生的ID值*/
select format(123456789.565378,4);/*输出123,456,789.5654有四舍五入*/

/***************控制流函数*************/
select if(1,2,3);/*如果第一参数为空则输入第三参数,否则输入第二个参数,后面的参数可以是字符,第一为整形*/
select ifnull(null,2); /*如果第一参数为空则输出第二个参数,否则输出第一参数*/

select 
       name,
       case 
       when age<=20 then '年轻'
       when age<=40 then '壮年'
       when age<=50 then '中年'
       else '老年'
       end as 'agestr',
       date_format(adddate,'%Y-%m-%d') as 'adddate'
 from users; /*case 语句的用法*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值