gpt4 book ai didi

sql - 从我的字符串中提取最后两个单词

转载 作者:行者123 更新时间:2023-12-04 13:33:52 26 4
gpt4 key购买 nike

我试图从我的字符串中提取最后一句话。

例子

输入字符串: GGG_FFFF_AAAA_BBBBBB_CCC_DDDDD
结果

╔═══════════╦════════════╗
║ FIRST_COL ║ SECOND_COL ║
╠═══════════╬════════════╣
║ CCC ║ DDDDD ║
╚═══════════╩════════════╝

我有下面的代码工作。
DECLARE @STR VARCHAR(50) = 'GGG_FFFF_AAAA_BBBBBB_CCC_DDDDD'

SELECT
Reverse(LEFT(Stuff(Reverse(@STR), 1, Charindex('_', Reverse(@STR)) + 1 - 1, ''), Charindex('_', Stuff(Reverse(@STR), 1, Charindex('_', Reverse(@STR)) + 1 - 1, '')) - 1)) as FIRST_COL,
Reverse(LEFT(Reverse(@STR), Charindex('_', Reverse(@STR)) - 1)) as SECOND_COL

有没有更简单的方法来实现这一目标

最佳答案

您可以使用 XML:

DECLARE @input nvarchar(max) = 'GGG_FFFF_AAAA_BBBBBB_CCC_DDDDD',
@x xml

SELECT @x = CAST('<a>'+REPLACE(REVERSE(@input),'_','</a><a>')+'</a>' as xml)


SELECT REVERSE(@x.value('/a[2]','nvarchar(max)')) as FIRST_COL,
REVERSE(@x.value('/a[1]','nvarchar(max)')) as SECOND_COL

输出:
FIRST_COL   SECOND_COL
CCC DDDDD

关于sql - 从我的字符串中提取最后两个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39744644/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com