GreenPlum子串 - 获取长文本的一部分

时间:2014-01-09 23:34:08

标签: postgresql substring greenplum

说我有一个很长的网址

xyz = 'www.google.com/xyz?para1=value1&para2=value2&para3=value3....'

我试图从这个长URL中获取'para1'

所以,我有

select TRIM(Leading '?' from Substring(xyz from '%#"?%=#"%' for '#'))

我对这个特定陈述的答案是

para1=value1&para2=value2&para3=

如何使用上面的select语句(或任何其他类似方法?)

获得'para1'

我正在使用Greenplum(如主题标题中所述)

1 个答案:

答案 0 :(得分:2)

由于您显然拥有regexp_函数(我不认为Greenplum支持它们),请使用:

select (regexp_matches(
   'www.google.com/xyz?para1=value1&para2=value2&para3=value3....',
   '\?([^&]+)='
   ))[1];