从表列中的管道分隔字符串中提取字符串值

时间:2014-04-25 08:40:16

标签: sql database oracle

我是甲骨文的新手。 我的表中有一个包含管道(|)分隔字符串的列,如下所示:

uguyguyguyguyguy|0737494110|noreply@xxyyxx.se|E:\PROD_ActionMarketer\Program\Apsis\ApsisREST.exe|E:\PROD_ActionMarketer\Temp\TempApsisAdmin.skv|SENDEMAIL|"LIST=Daily SMS SPL"|1015832

如您所见,倒数第二个值以“LIST =”开头。我想在此字符串之后提取值,即“每日SMS SPL”,以便能够将其与另一个表中的另一列进行比较。如果可能,我想使用SELECT查询获取此值(“每日SMS SPL”)。

因此,我们假设表名为MYTABLE,列名为MYCOLUMN

1 个答案:

答案 0 :(得分:1)

  SELECT SUBSTR(surname,1
                 ,INSTR(surname,'"',1,1)-1) FROM
(SELECT SUBSTR(column
                 ,INSTR(column,'LIST',-1)+5
                 ) AS surname
     FROM table)

FIDDLE