【问题标题】:Get a word from delimited a string从分隔的字符串中获取单词
【发布时间】:2021-02-12 09:52:21
【问题描述】:

我正在处理一串句子,需要从段落中获取特定的句子。

示例输入 “汤姆是一只猫。他喜欢在外面玩。他也喜欢吃。'

分隔符是'.',如果我需要第二句那么: 结果应该是‘他喜欢在外面玩’

这应该通过 ms sql 标量函数来完成。

【问题讨论】:

  • 你为什么使用不受支持的软件?
  • 我必须,这是客户数据库,不能更改

标签: sql sql-server-2008


【解决方案1】:

您需要调整数据类型和搜索位置(我不知道您可能有多少空格等)以满足您的需求,但这里是基础:

create function dbo.udf_SecondSentence (@s varchar(200))
returns varchar(200)
begin
    declare @n1 int
    , @n2 int

    set @n1 = CHARINDEX('.', @s)
    set @n2 = CHARINDEX('.', @s, CHARINDEX('.', @s) + 1)

    return SUBSTRING(@s, @n1 + 2, @n2 - @n1 - 2)
end
go


select dbo.udf_SecondSentence('Tom is a cat. He loves playing outside. He also love eating.')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-29
    • 2019-08-10
    • 2010-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多