Question

dire que j'ai une longue url

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

J'essaie d'obtenir le "para1" de cette longue url

Alors, j'ai

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

La réponse que je reçois pour cette déclaration particulière est

para1=value1&para2=value2&para3=

Comment puis-je obtenir juste "para1" à l'aide de l'instruction SELECT ci-dessus (ou une autre méthode similaire?)

J'utilise Greenplum (comme mentionné dans la rubrique The Topic)

Était-ce utile?

La solution

Puisque vous avez apparemment les fonctions regexp_ (je n'ai pas pensé Greenplum les soutenait) Utilisez:

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

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top