首页 > 代码库 > Mysql经常使用函数

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);

技术分享


Mysql经常使用函数