当前位置: 首页 > news >正文

Mysql函数学习笔记

MySQL 字符串函数

ASCII(s)

返回字符串 s 的第一个字符的 ASCII 码。

//返回 CustomerName 字段第一个字母的 ASCII 码
SELECT ASCII(CustomerName) AS NumCodeOfFirstChar
FROM Customers;

CHAR_LENGTH(s)-返回字符串 s 的字符数

//返回字符串 RUNOOB 的字符数
SELECT CHAR_LENGTH("RUNOOB") AS LengthOfString;

CHARACTER_LENGTH(s)

返回字符串 s 的字符数,等同于 CHAR_LENGTH(s)

//返回字符串 RUNOOB 的字符数
SELECT CHARACTER_LENGTH("RUNOOB") AS LengthOfString;

CONCAT(s1,s2…sn)

字符串 s1,s2 等多个字符串合并为一个字符串

//合并多个字符串
SELECT CONCAT("SQL ", "Runoob ", "Gooogle ", "Facebook") AS ConcatenatedString;

CONCAT_WS(x, s1,s2…sn)

同 CONCAT(s1,s2,…) 函数,但是每个字符串之间要加上 x,x 可以是分隔符

//合并多个字符串,并添加分隔符:
SELECT CONCAT_WS("-", "SQL", "Tutorial", "is", "fun!")AS ConcatenatedString;

FIELD(s,s1,s2…)

返回第一个字符串 s 在字符串列表(s1,s2…)中的位置

//返回字符串 c 在列表值中的位置:
SELECT FIELD("c", "a", "b", "c", "d", "e");

FIND_IN_SET(s1,s2)

返回在字符串s2中与s1匹配的字符串的位置

//返回字符串 c 在指定字符串中的位置:
SELECT FIND_IN_SET("c", "a,b,c,d,e");

FORMAT(x,n)

函数可以将数字 x 进行格式化 “#,###.##”, 将 x 保留到小数点后 n 位,最后一位四舍五入。

//格式化数字 "#,###.##" 形式:
SELECT FORMAT(250500.5634, 2);     -- 输出 250,500.56

INSERT(s1,x,len,s2)

字符串 s2 替换 s1 的 x 位置开始长度为 len 的字符串

//从字符串第一个位置开始的 6 个字符替换为 runoob:
SELECT INSERT("google.com", 1, 6, "runoob");  -- 输出:runoob.com

LOCATE(s1,s)

从字符串 s 中获取 s1 的开始位置

//获取 st 在字符串 myteststring 中的位置:
SELECT LOCATE('st','myteststring');  -- 5//返回字符串 abc 中 b 的位置:
SELECT LOCATE('b', 'abc') -- 2

LCASE(s)

将字符串 s 的所有字母变成小写字母

//字符串 RUNOOB 转换为小写:
SELECT LCASE('RUNOOB') -- runoob

LEFT(s,n)

返回字符串 s 的前 n 个字符

//返回字符串 runoob 中的前两个字符
SELECT LEFT('runoob',2) -- ru

LOWER(s)

将字符串 s 的所有字母变成小写字母

字符串 RUNOOB 转换为小写:
SELECT LOWER('RUNOOB') -- runoob

LPAD(s1,len,s2)

在字符串 s1 的开始处填充字符串 s2,使字符串长度达到 len

//将字符串 xx 填充到 abc 字符串的开始处
SELECT LPAD('abc',5,'xx') -- xxabc

LTRIM(s)

去掉字符串 s 开始处的空格

//去掉字符串 RUNOOB开始处的空格:
SELECT LTRIM("    RUNOOB") AS LeftTrimmedString;-- RUNOOB

MID(s,n,len)

从字符串 s 的 n 位置截取长度为 len 的子字符串,同 SUBSTRING(s,n,len)

//从字符串 RUNOOB 中的第 2 个位置截取 3个 字符:
SELECT MID("RUNOOB", 2, 3) AS ExtractString; -- UNO

POSITION(s1 IN s)

从字符串 s 中获取 s1 的开始位置

//返回字符串 abc 中 b 的位置:
SELECT POSITION('b' in 'abc') -- 2

REPEAT(s,n)

将字符串 s 重复 n 次

//将字符串 runoob 重复三次:
SELECT REPEAT('runoob',3) -- runoobrunoobrunoob

REPLACE(s,s1,s2)

将字符串 s2 替代字符串 s 中的字符串 s1

//将字符串 abc 中的字符 a 替换为字符 x:
SELECT REPLACE('abc','a','x') --xbc

REVERSE(s)

将字符串s的顺序反过来

//将字符串 abc 的顺序反过来:
SELECT REVERSE('abc') -- cba

RIGHT(s,n)

返回字符串 s 的后 n 个字符

//返回字符串 runoob 的后两个字符:
SELECT RIGHT('runoob',2) -- ob

RPAD(s1,len,s2)

在字符串 s1 的结尾处添加字符串 s2,使字符串的长度达到 len

//将字符串 xx 填充到 abc 字符串的结尾处:
SELECT RPAD('abc',5,'xx') -- abcxx

RTRIM(s)

去掉字符串 s 结尾处的空格

//去掉字符串 RUNOOB 的末尾空格:
SELECT RTRIM("RUNOOB     ") AS RightTrimmedString;   -- RUNOOB

SPACE(n)

返回 n 个空格

//返回 10 个空格:
SELECT SPACE(10);

STRCMP(s1,s2)

比较字符串 s1 和 s2,如果 s1 与 s2 相等返回 0 ,如果 s1>s2 返回 1,如果 s1<s2 返回 -1

//比较字符串:
SELECT STRCMP("runoob", "runoob");  -- 0

SUBSTR(s, start, length)

从字符串 s 的 start 位置截取长度为 length 的子字符串

//从字符串 RUNOOB 中的第 2 个位置截取 3个 字符:
SELECT SUBSTR("RUNOOB", 2, 3) AS ExtractString; -- UNO

SUBSTRING(s, start, length)

从字符串 s 的 start 位置截取长度为 length 的子字符串,等同于 SUBSTR(s, start, length)

//从字符串 RUNOOB 中的第 2 个位置截取 3个 字符:
SELECT SUBSTRING("RUNOOB", 2, 3) AS ExtractString; -- UNO

SUBSTRING_INDEX(s, delimiter, number)

返回从字符串 s 的第 number 个出现的分隔符 delimiter 之后的子串。
如果 number 是正数,返回第 number 个字符左边的字符串。
如果 number 是负数,返回第(number 的绝对值(从右边数))个字符右边的字符串。

SELECT SUBSTRING_INDEX('a*b','*',1) -- a
SELECT SUBSTRING_INDEX('a*b','*',-1)    -- b
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('a*b*c*d*e','*',3),'*',-1)    -- c

TRIM(s)-去掉字符串 s 开始和结尾处的空格

//去掉字符串 RUNOOB 的首尾空格:
SELECT TRIM('    RUNOOB    ') AS TrimmedString;

UCASE(s)-将字符串转换为大写

//将字符串 runoob 转换为大写:
SELECT UCASE("runoob"); -- RUNOOB

UPPER(s)-将字符串转换为大写

//将字符串 runoob 转换为大写:
SELECT UPPER("runoob"); -- RUNOOB
http://www.lryc.cn/news/417966.html

相关文章:

  • 【Linux基础】Linux基本指令(一)
  • 全球视野:航空蓄电池的国际标准与技术创新
  • 11-初识python的函数——定义和调用
  • Windows安装Swoft框架
  • 阅读台灯什么品牌好?一文带你了解热门阅读台灯推荐
  • 1、.Net UI框架:Xamarin Forms - .Net宣传系列文章
  • Tomcat 最大连接数实现原理
  • 大数据应用【大数据导论】
  • IP地址申请SSL证书实现https访问
  • 未授权访问漏洞上(漏洞复现合集)
  • 多久没有清理你的电脑磁盘了?轻松解锁免费轻量磁盘清理工具
  • 高精度加法c++
  • SQL布尔盲注
  • OpenGL实现3D游戏编程【连载3】——3D空间模型光照初步
  • Python 进行反射和元编程
  • Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N]……解决
  • 如何看待“低代码”开发平台的兴起
  • React类组件与函数组件有什么异同
  • 函数调用的过程理解_汇编角度
  • 【Java-一些常见单列集合面试问题】
  • 搭建个人博客需要做哪些事
  • 《向量数据库指南》——非结构化数据的行业需求及向量数据库的关键角色
  • C++:map容器的使用
  • C++初学(10)
  • 在MAC安装Lazarus 起点 - 我们的第一个Lazarus程序!
  • 【每日刷题】Day96
  • EGO-Swarm 仿真环境搭建
  • 【EI会议征稿通知】第九届计算机技术与机械电气工程国际学术论坛(ISCME 2024)
  • 【starRocks-docker 部署问题汇总】
  • threejs中,如何检测一个模型周边一定范围内的其它模型