繁体   English   中英

MySQL-使用SUBSTRING从数据字段中提取数字

[英]MySQL - extract number from data field using SUBSTRING

我想提取NUMBER;之间的NUMBER 到目前为止,我可以提取最多数字的数据,但是在数字之后我什么都不想要。 例如,

SELECT
    SUBSTRING(field, LOCATE('NUMBER=', rrule) + 7)
FROM table

资料栏位:

DATA:PASS=X12;NUMBER=331;FIELD=1
DATA:PASS=X12;NUMBER=2;FOO=BAR;FIELD=1

所需输出:

331
2

您可以结合使用SUBSTRING_INDEX函数:

SELECT
  SUBSTRING_INDEX(
    SUBSTRING_INDEX(field, 'NUMBER=', -1),
    ';',
  1)
FROM
  tablename

在此处查看示例小提琴

内部的SUBSTRING_INDEX将返回NUMBER =字符串之后的所有内容,而第二个将返回;之前的所有内容; 由内部函数返回。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM