MySQL常用函数
图片均为SQL语句的运行结果
(1)CONCAT(s1,s2…sn):字符串 s1,s2 等多个字符串合并为一个字符串
SELECT CONCAT("SQL ", "Runoob ", "Gooogle ", "Facebook") AS ConcatenatedString;
(2)CONCAT_WS(x, s1,s2…sn):同 CONCAT(s1,s2,…) 函数,但是每个字符串之间要加上 x,x 可以是分隔符
SELECT CONCAT_WS("-", "SQL", "Tutorial", "is", "fun!")AS ConcatenatedString;
(3)FORMAT(x,n):函数可以将数字 x 进行格式化 “#,###.##”, 将 x 保留到小数点后 n 位,最后一位四舍五入。
SELECT FORMAT(250500.5634, 2);
(4)INSERT(s1,x,len,s2): 字符串 s2 替换 s1 的 x 位置开始长度为 len 的字符串
SELECT INSERT("google.com", 1, 6, "runoob") AS A;
(5)LEFT(s,n):返回字符串 s 的前 n 个字符
SELECT LEFT('runoob',2) as a ;
(6)LPAD(s1,len,s2):在字符串 s1 的开始处填充字符串 s2,使字符串长度达到 len
SELECT LPAD('abc',4,'xx');
SELECT LPAD('abc',5,'xx');
(7)LTRIM(s):去掉字符串 s 开始处的空格
SELECT LTRIM(" RUNOOB") AS LeftTrimmedString;
(8)REPLACE(s,s1,s2):将字符串 s2 替代字符串 s 中的字符串 s1
SELECT REPLACE('abcabcabcaba','ab','-X') as a;
(9)REVERSE(s):将字符串s的顺序反过来
SELECT REVERSE('abc');
(10)RIGHT(s,n):返回字符串 s 的后 n 个字符
SELECT RIGHT('runoob',2) ;
(11):RTRIM(s):去掉字符串 s 结尾处的空格
SELECT RTRIM("RUNOOB ") AS RightTrimmedString;
(12)STRCMP(s1,s2):比较字符串 s1 和 s2,如果 s1 与 s2 相等返回 0 ,如果 s1>s2 返回 1,如果 s1<s2 返回 -1
SELECT STRCMP("runoobqq", "runooba") as a; -- 结果:1
SELECT STRCMP("runoob", "runoob") as a; -- 结果:0
SELECT STRCMP("runoob", "runooba") as a; -- 结果:-1
(13)SUBSTR(s, start, length) :从字符串 s 的 start 位置截取长度为 length 的子字符串
SELECT SUBSTR("RUNOOB", 2, 3) AS ExtractString;
(14)SUBSTRING(s, start, length):同上SUBSTR(s, start, length);
(15)TRIM(s):去掉字符串 s 开始和结尾处的空格
SELECT TRIM(' RUNOOB ') AS TrimmedString;
(16)ADDDATE(d,n): 计算起始日期 d 加上 n 天的日期
(17)CURDATE() :返回当前日期
(18)CURRENT_DATE() :返回当前日期(同上)
(19)CURRENT_TIME :返回当前时间
CURTIME():返回当前时间
(20)CURRENT_TIMESTAMP(): 返回当前日期和时间
now():返回当前日期和时间
(21)DATEDIFF(d1,d2):计算日期 d1->d2 之间相隔的天数