【发布时间】:2021-06-17 12:42:00
【问题描述】:
我正在尝试返回与 Redshift 数据库中特定正则表达式匹配的所有结果。
示例查询
WITH aa AS
(SELECT DISTINCT
id,
record,
regexp_substr(record, '(#{2})([A-Z]{2,3})',1,1),
REGEXP_COUNT(record, '(#{2})([A-Z]{2,3})')
FROM table_a)
SELECT
*
FROM aa
上述查询返回第一次出现和出现的总次数。
有没有办法返回所有事件?也许使用受计数限制的变量进行迭代?
regexp_substr(record, '(#{2})([A-Z]{2,3})',1,n)
有一个使用 CONNECT BY LEVEL 的 Oracle 解决方案,但该选项似乎不适用于 Redshift。
【问题讨论】:
-
你能提供样本数据和想要的结果吗?
标签: sql regex amazon-redshift regexp-substr