在DB2中定位和返回子字符串到空间

问题描述 投票:-1回答:1

所以说我有一些字符串

'xxxxxxx xxxxxx xxxxxx xxxxx model:MODEL_NAME xxxxx'

有没有办法我可以在字符串中搜索子字符串model:,然后返回一个子字符串,其中包含字符串中下一个空格的所有内容。

所以MODEL_NAME会在每个字符串中有所不同但我想在找到model:MODEL_NAME之后在这个例子中返回model:

希望这是有道理的

sql db2
1个回答
0
投票

它可能不是最有说服力的解决方案,但我发现这是有效的

SELECT
  SUBSTR(TRIM(example.Trimmed), 1,LOCATE(' ', TRIM(example.Trimmed))-1) Desired

FROM
(SELECT
    SUBSTR('xxxxxxx xxxxxx xxxxxx xxxxx model:MODEL_NAME xxxxx',
    LOCATE('model:','xxxxxxx xxxxxx xxxxxx xxxxx model:MODEL_NAME xxxxx')-1) as Trimmed
FROM SYSIBM.SYSDUMMY1) example;

首先,子查询定位单词模型并返回其右侧的所有内容(包括)并将其存储为表'示例'。然后它定位空间并将其作为子字符串返回到其左侧。

© www.soinside.com 2019 - 2024. All rights reserved.