我的子串正在工作,但我在结尾的单词末尾收到了一个额外的字母

时间:2014-03-28 19:54:17

标签: sql sql-server tsql

SUBSTRING(LEFT(shortnote, CHARINDEX('Additional Comments:', shortnote)), 
CHARINDEX('Patient Instructions:', shortnote) + LEN('Patient Instructions:'),LEN(shortnote))

我得到的结果有一点空格,所有结果中的'附加注释'中的字母A.
如何摆脱那封额外的信件。我不介意任何空间我只是想摆脱额外的信。我得到的价值是患者指示和其他评论 谢谢

2 个答案:

答案 0 :(得分:2)

SUBSTRING(
    LEFT(shortnote, CHARINDEX('Additional Comments:', shortnote)-1), 
    CHARINDEX('Patient Instructions:', shortnote) + LEN('Patient Instructions:') , LEN(shortnote))

答案 1 :(得分:1)

你必须经过charindex() - 1

charindex()返回搜索词开始的索引,因此要消除它,您需要向左移动1个字符。