注意 不同数据库内置函数名称或有差异,可参考

1.从左至右截取

①使用left()函数可以从左至右对字符串进行截取

语法:LEFT(str,length)

str是要进行截取的字符串,length是要截取的长度(数字), left('abcdefg',3) 即表示从左开始截取包含第一位到第三位字符串的所有内容

例如:执行  select left('abcdefg',3) 返回结果为  abc

②使用substr()函数进行截取

语法:SUBSTR(str,startPosition,returnLength)

str是要进行截取的字符串,startPosition(数字)是给定开始截取的位置,returnLength(数字)是指定要截取的长度;

若只给定substr一个数字参数如 substr(‘12345’,3),则默认该数字参数为开始截取的位置并返回其后所有字符,而LEFT函数则是只从左开始截取到指定的位置。

例如:

2.从右至左截取

使用right()函数可以从右至左对字符串进行截取

语法:RIGHT(str,length)

str是要进行截取的字符串,length是要截取的长度(数字), right('abcdefg',3) 即表示从右开始截取到第三位字符串的所有内容

例如:执行  select right('abcdefg',3) 返回结果为  efg

3.反转字符串截取后再反转还原

利用REVERSE()函数可以将字符串内容进行反转

例如 执行  select REVERSE('cba')  结果为   abc;一些情况可以使用这个函数反转截取后再反转。

4.截取指定指定字符或字符串之间的内容

mysql:

在mysql中可使用SUBSTRING_INDEX()函数来截取指定字符或字符串的内容;

语法:SUBSTRING_INDEX(str,delim,count)

str是要进行截取的字符串;delim是指定的分割字符或字符串;count是delim在对应str内容中出现的次数,count为正数表示从左至右截取n次之前的所有内容,为负数表示从右至左截取n次之前的内容;

例如:

因此,针对要截取指定字符之间的内容,可以先使用SUBSTRING_INDEX函数 分两次 截取指定字符左边或右边的所有字符

例如,截取  '_432_231_abc_2_e2'  中的 abc:

第一步:根据分隔符  _   从左至右截取第四个分隔符 _ 前包含 abc的所有内容:

SELECT SUBSTRING_INDEX('_432_231_abc_2_e2','_',4);

第二步:再使用SUBSTRING_INDEX函数根据分隔符 _ 从右至左截取  第一步获取的内容中   第一个分隔符 _ 前的所有内容

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('_432_231_abc_2_e2','_',4),'_',-1);

 
分类: 数据库

Sql 字符串截取的更多相关文章

  1. sql字符串处理

    sql字符串截取 substring(ParamName,start,length) start开始位置,length结束位置 DECLARE @Tel NVARCHAR(20) SET @Tel=' ...

  2. SQL Server截取字符串

    --SQL Server截取字符串 , Len('hello@163.com')) ,charindex('.','hello@163.com'))

  3. 在论坛中出现的比较难的sql问题:1(字符串分拆+行转列问题 SQL遍历截取字符串)

    原文:在论坛中出现的比较难的sql问题:1(字符串分拆+行转列问题 SQL遍历截取字符串) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方 ...

  4. 解决存储过程中拼接的SQL字符串超长导致sql语句被截取的问题

    今天遇到了一个奇葩的问题:存储过程中的sql字符串拼接的太长,超出了分页存储过程执行sql参数的nvarchar(4000)的长度. 没办法,只能修改自己的存储过程,因为分页存储过程是不能动的. 开始 ...

  5. Linux 的shell 字符串截取很有用。有八种方法。

    一 Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.linuxidc.com/123.htm 1  # 号截取,删除左边字符,保留右边字符. echo ${va ...

  6. MySQL 字符串截取相关函数

    MySQL 字符串截取相关函数 在工作中,可能需要将某些字段按某个分割符组成一个字符串作为字段值存取到数据库表中,比如某个任务对应三个结果,分别存储在不同的数据表中,这时可以将这三个不同表的主键按照约 ...

  7. Mysql字符串截取函数SUBSTRING的用法说明

    感觉上MySQL的字符串函数截取字符,比用程序截取(如PHP或JAVA)来得强大,所以在这里做一个记录,希望对大家有用. 函数: 1.从左开始截取字符串 left(str, length) 说明:le ...

  8. SQL字符串操作汇总

    SQL字符串操作汇总 --将字符串中从某个字符开始截取一段字符,然后将另外一个字符串插入此处 select stuff('hello,world!',4,4,'****')   --返回值hel*** ...

  9. MySQL 字符串截取SUBSTRING()函数

    MySQL 字符串截取相关函数: 1.从左开始截取字符串 left(str, length) 说明:left(被截取字段,截取长度) 例: select left(content,200) as ab ...

  10. MySQL 字符串截取函数

    MySQL 字符串截取函数:left(), right(), substring(), substring_index().还有 mid(), substr().其中,mid(), substr() ...

随机推荐

  1. AutoCAD 2020中文版建筑设计从入门到精通下载链接

    AutoCAD 2020中文版建筑设计从入门到精通下载链接 链接:https://pan.baidu.com/s/1EgFHOSKfPrr9Xdp3bNA-pA或https://pan.baidu.c ...

  2. U盘或光盘启动的Win7-8-10的PE系统制作步骤

    U盘或光盘启动的Win7-8-10的PE系统制作步骤 1.打开http://www.ushendu.com/下载PE制作工具 2.下载完成后安装到我的电脑, 把准备好的U盘插到电脑上,打开U深度PE制 ...

  3. Python语言中进程、线程、协程执行效率分析

  4. CDS标准视图:预期应收 I_FutureAccountsReceivables

    视图名称:预期应收 视图类型:参数 视图代码: 点击查看代码 //Documentation about annotations can be found at http://help.sap.com ...

  5. linxux学习01

    Linux第一天 1.为什么要学习linux? 因为大数据中绝大部分核心组件都是基于linux操作系统运行的,企业中基本上都是linux系统. 2.怎么去学linux?(什么是大数据) 大数据技术组件 ...

  6. Graph DataBase介绍-图数据库

    前言分析社会关系这类复杂图壮结构的海量数据,使用图形数据库(Graph DataBase)是最好的选择.– 作者:李祎 <程序员>介绍各种NoSQL 数据库的文章已经很多,不过大部分都是基 ...

  7. ClickHouse-4SQL参考

    SQL参考 ClickHouse支持以下形式的查询: SELECT INSERT INTO CREATE ALTER 其他类型的查询 ClickHouse SQL 语句 语句表示可以使用 SQL 查询 ...

  8. JavaScript操作DOM元素的classList

    在JavaScript中,classList 是一个DOM元素属性,它提供了一组方法来添加.移除和切换元素的类名.classList 属性返回一个 DOMTokenList 集合,表示元素的类名. 这 ...

  9. idea操作小技巧总结

    一.热键 光标导航前进|后退 Ctrl+Alt+左右方向键 光标转到语句块的头尾 Ctrl+[|] 再次提示函数参数列表 Ctrl+P 插入实时模板 Ctrl+J 文件结构查看 Ctrl+F12 书签 ...

  10. WAIC 2024,好city啊!

    7月4日,"以共商促共享•以善治促善智"为主题的2024世界人工智能大会暨人工智能全球治理高/级别会议(简称"WAIC 2024")在上海举办.天翼云携智算创新 ...