如何 select DB2 SQL 中被定界符包围的子字符串?

How to select a substring surrounded by delimiters in DB2 SQL?

我想 select '/' 分隔符之间的子字符串。 这是我的示例数据:

1/1/1990
13/111/1990
131/1/1990
2/11/1990

我想要得到这个输出:

1   1    1990
13  111  1990
131 1    1990
2   11   1990

我试过这个:

SELECT date,SUBSTRING(date, LOCATE('/', date)+ 1, LOCATE('/', date)-1) FROM data

不幸的是,当日期为 13/1/1990 或 1/13/1990 时,它不起作用。

我认为 DB2 支持 regexp_substr():

select regexp_substr(col, '[^/\+]+', 1, 1) as part1,
       regexp_substr(col, '[^/\+]+', 1, 2) as part2,
       regexp_substr(col, '[^/\+]+', 1, 3) as part3
from t;