【问题标题】:Tsql substring / charindexTsql 子字符串/字符索引
【发布时间】:2014-06-18 19:45:44
【问题描述】:

我有以下文本字段,并试图在“审阅者”之后提取名称。我如何在 TSQL 中做到这一点? 他的信息如下:

<p>Assessed By: Joe Thomas</p>
<p>Reviewed By: Fred Smith</p>
<p>The end of document</p>

【问题讨论】:

  • 所以,您甚至知道必要函数的名称。你还需要什么?
  • 投反对票,因为鼠标悬停时,“这个问题没有显示任何研究工作”。

标签: sql-server tsql substring charindex


【解决方案1】:

如果你想让它更灵活地处理你可以通过变量传递的不同字符串,你可以这样做。

  DECLARE @Mytext AS VARCHAR(200) 
SET @Mytext = '<p>Assessed By: Joe Thomas</p>
<p>Reviewed By: Fred Smith</p>
<p>The end of document</p>'

SELECT LEFT(RIGHT(@Mytext, 42), CHARINDEX('<', RIGHT(@Mytext, 42)) - 1) 

/* 或者为了让它更健壮,你可以计算索引值 而不是传递一个固定值,在这种情况下为 42。 12 是文本的长度 'Reviewed By: */

    SELECT LEFT(RIGHT(@Mytext, (LEN(@Mytext) - 
    PATINDEX('%Reviewed By:%', @Mytext)) - 12), 
    CHARINDEX('<', RIGHT(@Mytext,LEN(@Mytext) - 
    PATINDEX ('%Reviewed By:%', @Mytext) - 12)) - 1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-10
    • 1970-01-01
    • 2010-12-15
    • 2021-02-24
    • 2019-07-22
    • 1970-01-01
    • 1970-01-01
    • 2014-05-08
    相关资源
    最近更新 更多