# 其他函数
CONV(N,from_base,to_base)
不同数基间转换数字。返回值为数字的N字符串表示,
由from_base基转化为 to_base 基。如有任意一个参数为NULL,则返回值为 NULL。
自变量 N 被理解为一个整数,但是可以被指定为一个整数或字符串。最小基数为 2 ,
而最大基数则为 36。 IF to_base 是一个负数,则 N 被看作一个带符号数。
否则, N 被看作无符号数。 CONV() 的运行精确度为 64比特。
-- 位函数
SELECT CONV('2',10,2); -- 10
SELECT CONV('3',10,2); -- 11
SELECT CONV('11',10,2); -- 1011
SELECT 2 | 3; -- 3
SELECT 2 & 3; -- 2
SELECT 1 ^ 1; -- 0
SELECT 1 ^ 0; -- 1
SELECT 11 ^ 3; -- 8
/*
| 只要有一个为1 就为 1
& 两个都为1 才为 1
^ 在程序中不是幂运算,而是位运算 只有不相同才为1 相同为0
1011
0011
1000 -- 8
*/
-- 左移 右移
SELECT 1 << 2; -- 4
SELECT 1 >> 2; -- 0
SELECT 10 >> 2; -- 2
-- 1010 --> 0010
SELECT 11 >> 2; -- 2
-- 1011 --> 0010
-- 反转 ~ 优先级最高
SELECT ~1; -- 18446744073709551614
SELECT 5 & ~1;
-- 101
-- 110
-- 100 -- 4
-- 判断是否优先级高
SELECT ~5 & 1; -- 0
-- 先~后&
010
001 -- 000
-- 先&后~
101
001 -- 001 ~ 100
-- 加密函数
SELECT PASSWORD('abc'); -- 加密是单向的 (不可逆 )。
SELECT MD5('abc');
SELECT SHA1('abc'); -- SHA1()可以被视为一个密码更加安全的函数
SELECT SHA('abc');
DECODE(crypt_str,pass_str)
使用 pass_str 作为秘钥,解密 加密后的字符串 crypt_str, crypt_str 应该是由ENCODE()返回的字符串。
ENCODE(str,pass_str)
使用pass_str 作为秘钥,加密 str 。 使用DECODE()解密结果。
SELECT ENCODE('a','abc'); -- 2
SELECT DECODE('2','abc'); -- a
SELECT DECODE('a','abc'); -- d
-- 信息函数
SELECT CHARSET('as'); -- utf8
SELECT CHARSET(CONVERT('abc' USING gbk)); -- gbk
SELECT USER(); -- root@localhost
SELECT CURRENT_USER(); -- root@localhost
SELECT DATABASE(); -- 当前数据库
SELECT VERSION(); -- 查看当前版本 5.5.28
-- 其他函数
DEFAULT(col_name)
返回一个表列的默认值。若该列没有默认值则会产生错误。
UPDATE t SET i = DEFAULT(i)+1 WHERE id < 100;
FORMAT(X,D)
将数字X 的格式写为'#,###,###.##',以四舍五入的方式保留小数点后 D 位,
并将结果以字符串的形式返回。若 D 为 0, 则返回结果不带有小数点,或不含小数部分。
SELECT FORMAT(12442.123456, 2); -- '12,442.12'
SELECT FORMAT(12442.1,4); -- '12,442.1000'
SELECT FORMAT(12552.2,0); -- '12,552'
NAME_CONST(NAME,VALUE)
返回给定值。 当用来产生一个结果集合列时, NAME_CONST()促使该列使用给定名称。
SELECT NAME_CONST('col_name', 'tomcat'); -- tomcat
-- 产生随机值
SELECT UUID();
SELECT SPACE(6); -- 添加6个空格
SELECT REPEAT('' ,6);
SELECT LENGTH(SPACE(6)); -- 6
SELECT LENGTH( REPEAT('' ,6)); -- 0
SELECT LENGTH( REPEAT('a' ,6)); -- 6
Mysql常用函数 -- 其他函数
最新推荐文章于 2022-04-26 21:42:41 发布