第一部分 数学函数
- CEIL():进一取整数
- FLOOR():舍掉小数部分
- ROUND():四舍五入
- TRUNCATE():截取小数点后几位
- MOD():取余数
- ABS():取绝对值
- POWER():幂运算
- PI():圆周率
- RAND():0~1之间的随机数
- SIGN(X):得到数字符号
- EXP():计算e的x次方
EXAMPLE
第二部分 字符串函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
-- 测试字符串函数 -- CHAR_LENGTH():得到字符串的字符数 SELECT CHAR_LENGTH('abc'); -- LENGTH():返回字符串的长度 SELECT LENGTH('abc'); -- CONCAT(s1,s2,....):将字符串合并成一个字符串 SELECT CONCAT('a','b','c'); -- 如果字符串中包含NULL,返回拼接结果就是NULL SELECT CONCAT('a','b','c',null); -- CONCAT_WS(x,s1,s2,s2....):以指定分隔符拼接字符串 SELECT CONCAT_WS('-','a','b','c'); -- 如果null在拼接的内容中,则转化成空字符串 SELECT CONCAT_WS('-','a','b','c',null); -- 如果分隔符为null,拼接的结果为null SELECT CONCAT_WS(null,'a','b','c'); -- 将字符串转换成大写或者小写 UPPER()| UCASE() LOWER()|LCASE() SELECT UPPER('hello king'),UCASE('hello imooc'),LOWER('HELLO ADMIN'),LCASE('HELLO EVERYBODY'); -- 字符串的反转REVERSE() SELECT REVERSE('abc'); -- LEFT()|RIGHT():返回字符串的前几个字符或者后几个字符 SELECT LEFT('hello',2),RIGHT('hello',2); -- LPAD()|RPAD():用字符串填充到指定长度 SELECT LPAD('abc',10,'?'); SELECT RPAD('abc',10,'!'); -- 去掉字符串两端的空格TRIM()|LTRIM()|RTRIM(): SELECT CONCAT('*',TRIM(' abc '),'*'),CONCAT('*',LTRIM(' abc '),'*'),CONCAT('*',RTRIM(' abc '),'*'); -- REPEAT():重复指定的次数 SELECT REPEAT('hello',3); -- REPLACE():字符串 SELECT REPLACE('hello king','king','queen'); -- 截取字符串SUBSTRING SELECT SUBSTRING('abcdef',1,3); -- 比较字符串 SELECT STRCMP('a','b'); |
EXAMPLE
第三部分 日期时间函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
-- 测试日期时间函数 -- 返回当前日期 SELECT CURDATE(),CURRENT_DATE(); -- 返回当前时间 SELECT CURTIME(),CURRENT_TIME(); -- 返回当前的日期时间 SELECT NOW(),CURRENT_TIMESTAMP(),SYSDATE(); -- 返回日期中的月份和月份的名称 SELECT MONTH('2017-02-19'); SELECT MONTH(CURDATE()),MONTHNAME(CURDATE()); -- 返回星期几 SELECT DAYNAME(NOW()); -- 返回一周内的第几天,0代表星期一 SELECT DAYOFWEEK(NOW()); SELECT WEEK(NOW()); SELECT YEAR(NOW()),MONTH(NOW()),DAY(NOW()),HOUR(NOW()),MINUTE(NOW()),SECOND(NOW()); -- DATEDIFF()计算两个日期相差的天数 SELECT DATEDIFF('2017-03-06','2017-03-02'); |
EXAMPLE
第四部分 其他常用函数
1 2 3 4 5 6 7 8 9 10 |
-- 测试其它常用函数 SELECT VERSION(),CONNECTION_ID(); SELECT USER(),CURRENT_USER(),SYSTEM_USER(),SESSION_USER(); -- 得到上一步插入操作产生AUTO_INCREMENT的值 SELECT LAST_INSERT_ID(); SELECT MD5('king'); -- PASSWORD():密码加密算法 SELECT PASSWORD('root'); |