sql - T-SQL查找字符字符串并获取表达式右侧的所有字符

标签 sql sql-server tsql

我该怎么做

采取:

RJI#\\\\Cjserver\TrialWorks\CaseFiles\10000269\Pleadings\RJI - 10005781.doc

找到常量表达式“\\Cjserver\”并将所有内容放在表达式右侧,以便正确的指针为:

\\\\Cjserver\TrialWorks\CaseFiles\10000269\Pleadings\RJI - 10005781.doc

我知道 RIGHTCHARINDEX 的某种组合应该可以做到这一点。

最佳答案

DECLARE @input NVarChar(1000) =
  'RJI#\\Cjserver\TrialWorks\CaseFiles\10000269\Pleadings\RJI - 10005781.doc',
        @match NVarChar(100) =
  '\\Cjserver';
DECLARE @position Int = CHARINDEX(@match, @input);

SELECT SUBSTRING(@input, @position, 1000);

我只是使用 1000 来表示任意大的值。您可能应该根据您的数据调整其大小。

关于sql - T-SQL查找字符字符串并获取表达式右侧的所有字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6835415/

相关文章:

MySQL:我应该把外键放在哪里?

SQL Server 2000 到 SQL Server 2008 R2 迁移

sql - 查询查询语法错误

sql - 多子级SQL查询

sql - 如果指定了 SELECT DISTINCT,则 ORDER BY 项必须出现在选择列表中

mysql - 我如何通过 t-sql 从 URL 读取多个 xml 值

sql - 如何更新 sql server 中的前 100 条记录

SQL 排名和 SUM

sql - chalice 3 : using findAll with join tables

sql - 如何根据出生日期和 getDate() 计算年龄(以岁为单位)