sql - SQL Server 2016:获取两个字符之间的字符串?
问题描述
我有多个这样的记录:GUID-155_188.PNG
我需要取字符串155
,当然这个数字是可变的,所以可能有 1、2、3000 等。
但是语法总是一样的,在 a-
和 a之间_
。
那么,我怎样才能提取这两个字符之间的那部分呢?
解决方案
试试这个:
DECLARE @g varchar(1000) = 'GUID-155_188.PNG'
SELECT LEFT(RIGHT(@g, CHARINDEX('-', REVERSE(@g), 0) - 1), CHARINDEX('_', (RIGHT(@g, CHARINDEX('-', REVERSE(@g), 0) - 1)), 0) - 1)
推荐阅读
- python - Python pandas:ParserError:错误可能是由于使用多字符定界符时忽略引号引起的
- python - 以优雅的方式禁用函数链接调用
- sql - 如果 ID 相同,则将值相加的方法
- python - 如何在 matplotlib.pyplot.text() 函数中为 x 和 y 轴设置两个不同的坐标系?
- python - 使用 openpyxl 将 xlsx 文件加载到数据帧中
- flutter - 从命名路由重定向用户
- c++ - 错误:“std::chars_format”尚未声明
- python - Pandas 将行分解为可变行数
- r - 如何在R中制作散点图
- r - R在group_by中循环多个变量