gpt4 book ai didi

sql - 如何从 Oracle 中的字符串中获取唯一字符?

转载 作者:行者123 更新时间:2023-12-04 23:07:46 25 4
gpt4 key购买 nike

如何从 Oracle 中的字符串中获取唯一字符?

假设我有一列数据

CCCXXXCCCCCCCCCCCCCCCCXXCCCCCCCCCCCCCCCCCCCCCCC

我想返回 'CX'作为唯一字符的列表。

同样: aaaabbbccccdddaaa ==> abcd , HelloO ==> HeloO

顺序很重要,我希望它们的顺序与它们首次出现在字符串中的顺序相同。

有没有办法不使用存储过程来做到这一点?

编辑:添加更多示例

最佳答案

SELECT SUBSTR(REGEXP_SUBSTR('CCCCXXXCCCCCCCCCCCCCCCCXXCCCCCCCCCCCCCCCCCCCCCCC', '^(.)\1*.'), -2, 2) RESULT
FROM DUAL;

它返回 CX
这是另一个解决方案:
Select Replace (Wm_Concat (C), ',', '')
From
(Select Substr ('CCCXCCCXXXCCCCCCCCCCCCCCCCXXCCCCCCCCCCCCCCCC', Rownum, 1) C,
Min (Rownum) Rn
From Dual
Connect By Rownum <= Length ( 'CCCXCCCXXXCCCCCCCCCCCCCCCCXXCCCCCCCCCCCCCCCC')
Group By Substr ( 'CCCXCCCXXXCCCCCCCCCCCCCCCCXXCCCCCCCCCCCCCCCC', Rownum, 1)
Order By Rn
) X;

它按出现的顺序返回所有唯一字符。顺便说一句,是的,它看起来很可怕

关于sql - 如何从 Oracle 中的字符串中获取唯一字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7226303/

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