gpt4 book ai didi

postgresql - 使用 postgresQL 删除逗号分隔列表中有序连续重复项的最佳方法

转载 作者:行者123 更新时间:2023-12-03 01:59:17 25 4
gpt4 key购买 nike

我有一个列,其中的数据在单个字段中如下所示:

“a、a、b、b、c、a、b、b、b、a、a、a、a、a、a、c、a、a、b”

使用某种正则表达式或 SQL 函数,我想让它看起来像这样:

“a,b,c,a,b,a,c,a,b”

本质上,我试图摆脱按顺序出现的重复值,但保留从一个值到另一个值的独特更改。

我对正则表达式的了解几乎仅限于删除重复项。非常感谢任何帮助!

最佳答案

使用正则表达式:

SELECT regexp_replace('a,a,b,b,c,a,b,b,b,a,a,a,a,a,a,c,a,a,b', '(\w)(,\1)+', '\1', 'g')

(\w)(,\1)+ mutches: (任何单词字符) 和以下 (, 和这个相同的单词字符) 多次.. .

Fiddle example
RegExr example

关于postgresql - 使用 postgresQL 删除逗号分隔列表中有序连续重复项的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59162041/

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