返回字符串末尾的文本 - Presto SQL

问题描述 投票:0回答:2

我试图在我的字符串末尾返回文本。

Example #1- ad | aff | 11_32_32_Desired - Text
Example #2- ad | aff | 11_32_32_Desired Text

这些是我的列中的两个变体,有时所需文本的长度将在整个数据中发生变化。我试图将Desired Text值添加到自己的列中。有些行有 - 而有些则没有。

谢谢!

sql amazon-athena presto
2个回答
0
投票

Presto SQL支持regular expressions,尝试:

SELECT regexp_extract(column, 'Example #(\d+)\- ad \| aff \| \d\d_\d\d_\d\d_(.*)', 2)
FROM table

0
投票

如果你想要的是_最后一次出现后字符串的一部分,那么:

select substr(col, length(col) - strpos(reverse(col), '_') + 2)
© www.soinside.com 2019 - 2024. All rights reserved.