我正在使用 DbVisualizer 连接到 athena 实例。我有一个工作查询:
SELECT device, description, id, size, date FROM test.database WHERE month = '01'
and device not like '%link%'
and device not like '%Link%'
and device not like '%LINK%'
and id not like '%abc%'
and id not like '%Abc%'
and id not like '%ABC%'
group by device, description, id, size, date order by month desc
我想做的是清理它并使用正则表达式捕获案例。我很确定 /link.*/ig
和 /abc.*/ig
会捕获案例更改它,但我不知道如何将其插入。我无法获得 "input.regex" =
要么工作。
最佳答案
您可以使用 REGEXP_LIKE
这里:
SELECT DISTINCT device, description, id, size, date
FROM test.database
WHERE
month = '01' AND
NOT REGEXP_LIKE(device, '[lL]ink|LINK') AND
NOT REGEXP_LIKE(device, '[aA]bc|ABC')
ORDER BY
month DESC;
请注意您的 GROUP BY
逻辑也可以由一个不同的选择来表示,我在上面选择了它。
关于sql - 将 Athena SQL 与正则表达式结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67481285/