我有一个字段可以多次出现特定分隔符 - 在我的情况下它是“*”。分隔符在该字段中最多可以出现 10 次,最少出现 1 次。并非强制要求所有 10 次事件都在现场一次出现。根据要求,我需要找到第 n 次出现的分隔符,并在删除分隔符的出现作为输出后,将任何可用的数据从分隔符返回到字段的开头。
注意 - 我没有对 DB 的写入权限,因此无法创建用户定义函数来尝试字符串/子字符串组合。
例子:
Stack\*over\*flow\*com\*exchange\*queries\*need\*answer\*for\*thisquery\*
要求#1 - 找到第二次出现的 * 并在删除 * 后返回 LHS 上的任何内容
回答-。Stackover
要求#2 - 找到第 5 次出现 * 并在删除 * 后返回 LHS 上的任何内容
答案——Stackoverflowcomexchange
这种情况一直持续到第 10 次出现。
我能够获得第一次出现和 lhs 数据,但无法弄清楚其余的出现。
使用的数据库是 SQL server 2014。