2016-04-29 118 views
0

在DB2 V10我有一个表下列列值:如何提取两个管道字符之间的字符串?

POST:https:Booking:":getDetails"|26c4ebad-f727-4e59-bcff-3232230ad155|6f9bffbc:85 

我需要提取两者之间的串“|”字符作为select语句中的新列。 DB2似乎没有内置的正则表达式支持。到目前为止,我发现类似于正则表达式的函数可以使用外部库注册到DB2,但文章相当老旧,而且事情可能已经发生变化。什么是最简单的方法来完成这个?最佳性能的方法是什么?如果我必须添加外部库,是否有一个很好的文档说明如何在可能的情况下使用已经编译的库来添加和使用它们?

注意:DB2运行在Linux英特尔机器上。

+1

如果它总是两个管道,你不需要正则表达式吗? – mustaccio

+0

echo“POST:https:Booking:”:getDetails“| 26c4ebad-f727-4e59-bcff-3232230ad155 | 6f9bffbc:85”| sed's /.* | \(。* \)|。*/\ 1 /' – sjsam

+0

AS @mustaccio说,你可以使用'SUBSTR'和'LOCATE'的组合。 – Stavr00

回答

1

您可能从here获得帮助。只需要把你的字符串名称和管道字符,并根据你的需要调整查询。

相关问题