Mysql经常使用函数

-----------------------------字符串函数---------------------------------------

----拼接字符串。不论什么字符串与null拼接为null
select concat('aaa','bbb','ccc'),concat(null,'aaa');



----从第12个字符后開始的三个字符替换成me
select insert ('beijing2008you',12,3,'me');




----下标从1開始
select insert ('beijing',1,2,'oo');




---大写和小写转换
select lower('BEIJING'),UPPER('beijing');


---反复
select repeat('mysql ',3);



---去除两側的空格,去除左側空格。去除右側反复
select trim("  simba   "),ltrim("   simba   "),rtrim("  simba  ");




---输出左側的n个字符,输出右側的n个字符,若n为null,则输出null
select left('beijing2008',7),left('beijing',null ),right("beijing2008",4);



-----用最右边的填充最左边的字符,知道长度为n个
select lpad('2008',10,'beijing'),rpad('2008',10,'beijing'),lpad('2008',4,'beijing');


----替换字符串
select replace('beijing','i','o');


----比較第一个字符串和第二个的大小
select strcmp('bc','bs'),strcmp('b','b'),strcmp('c','b');


-----返回字符串的第x个位置起y个字符长度的子串。

select substring ('beijing2008',8,4),subString('beijing2008',1,7);


------------------------------数值函数----------------------------------


-----绝对值,字符串的都为0
select abs(4),abs(4-5),abs('a'-'b');


-----返回大于x的最小整数
select CEIL(-0.8),CEIL(0.8),ceil (2.0);


----返回小于x的最大整数。和ceil的使用方法刚好相反
select floor(-0.8),floor(0.8);


-----null为不论什么一个參数结果都为null
select mod(15,10),mod(1,11),mod(null,10);




------产生的是0 ~ 1之间的随机数
select rand(),rand()*10;


select ceil(rand()*100),floor(rand()*100);




---返回第一个数四舍五入后。小数点后几位
select round(1.1),round(1.567,2),round(1,2);


-----截断x       等于小数位仅仅留一位
select truncate(123.284,1);




-------日期和时间函数--------------------------------------


----current date  当前时间
select curdate();


select curtime();


select now();


-----返回date的unix时间戳

select unix_timestamp(now());



----返回某个时间戳相应的时间
select from_unixtime(132454);


-----一年中的第几周。第几年,小时和分钟

select week(now()),year(now()),hour(now()),minute(now());


 
----返回月份的英文
select monthname(now());


-----格式化date
select date_format(now(),'%M,%D%Y');


----两天相差的天数

select datediff("2014-05-10",now());



------当前的日期, 当前日期加31天    当前日期的一年后的后两个月  interval=间距
select now(), date_add(now(),interval 31 day)   ,date_add(now(),interval '1_2' year_month) ;



-------其它----

select version()


select database(),user()




------方便IP或网段的比較
-----返回IP地址的数字

select inet_aton('192.168.8.11')



---返回数字的IP地址
select inet_ntoa(3452233445);



--返回数字加密后的形式
select Password(123456);

select md5(123456);



原文地址:https://www.cnblogs.com/slgkaifa/p/7123613.html