如何分隔字符串,然后删除 MySQL 中分隔字符串的第一部分

How to separate strings and then remove first part of seperated string in MySQL

我想删除分隔字符串的第一部分和逗号。但是,我不能简单地使用删除字符串前三个字符的查询,因为字符长度不同(即第 10 个)。

原始数据:

1st,4000;2nd,1200;3rd,600;4th,200;total_value,6000;

分隔字符串的代码:

SELECT 
   SUBSTRING_INDEX((SUBSTRING_INDEX(PrizeMoneyBreakDown,';',1)),';',-1) AS 1st,
   SUBSTRING_INDEX((SUBSTRING_INDEX(PrizeMoneyBreakDown,';',2)),';',-1) AS 2nd
FROM race2

代码输出(分隔字符串):

1st,4000
2nd,1200

代码的期望输出:

4000
1200

如果您 运行 MySQL 8 岁以上,那么 REGEXP_SUBSTR 在这里工作:

SELECT
    REGEXP_SUBSTR(PrizeMoneyBreakDown, '[0-9]+', 1, 2) AS first,
    REGEXP_SUBSTR(PrizeMoneyBreakDown, '[0-9]+', 1, 4) AS second
FROM race2;