开心了, 就笑;不开心了,就过会儿再笑。。。。
分类: Mysql/postgreSQL
2015-10-10 16:24:58
一、数学函数
1、求余函数MOD(X,Y)
MOD(X,Y)返回x被y除后的余数,MOD()对于带有小数部分的数值也起作用,他返回除法运算后的精确余数
(user:root time: 04:05)[db: cfq]select mod(10,3);
+-----------+
| mod(10,3)|
+-----------+
| 1 |
+-----------+
1 row in set (0.00 sec)
2、四舍五入函数TRUNCATE(X,Y)
TRUNCATE(X,Y)返回被舍去至小数点后y位的数字x。若y的值为0,则结果不带有小数点或不带有小数部分。
若y设为负数,则截去(归零)x小数点左边起第y位开始后面所有低位的值。
(user:root time: 04:44)[db: cfq]select truncate(1.23,1);
+------------------+
| truncate(1.23,1) |
+------------------+
| 1.2 |
+------------------+
1 row in set (0.00 sec)
1.23小数点后保留1位
(user:root time: 04:44)[db: cfq]select truncate(1.23,3);
+------------------+
| truncate(1.23,3) |
+------------------+
| 1.230 |
+------------------+
1 row in set (0.00 sec)
1.23小数点后保留3位
二、不同进制之间数值转换的函数
1、hex:将2进制转换成16进制
(user:root time: 04:21)[db: cfq]select hex('this is a text');
+------------------------------+
| hex('this is a text') |
+------------------------------+
| 7468697320697320612074657874 |
+------------------------------+
1 row in set (0.02 sec)
unhex:将16进制转换成2进制
(user:root time: 04:35)[db: cfq]select unhex(7468697320697320612074657874);
+-------------------------------------+
| unhex(7468697320697320612074657874) |
+-------------------------------------+
| this is a text |
+-------------------------------------+
1 row in set (0.00 sec)
2、CONV(N,from_base,to_base)函数进行不同进制数间的转换。
(user:root time: 04:15)[db: cfq]select conv('a',16,10);
+-----------------+
| conv('a',16,10) |
+-----------------+
| 10 |
+-----------------+
1 row in set (0.00 sec)
把十六进制的‘a’转换成10进制的数值
三、截取字符串
1、字符串截取:substring(str, pos); substring(str, pos, len)
1、加密函数MD5(str)
MD5(str)为字符串算出一个MD5 128比特校验和。该值以32位十六进制数字的二进制字符串形式返回,若参数为NULL,则会返回NULL
(user:root time: 04:18)[db: cfq]select md5('123abc');