首页 > 数据库 > mysql教程 > 如何从 MySQL 文本字段中提取连续的数字?

如何从 MySQL 文本字段中提取连续的数字?

DDD
发布: 2024-12-05 06:56:10
原创
950 人浏览过

How Can I Extract Consecutive Digits from a MySQL Text Field?

从 MySQL 文本字段中提取连续数字

在 MySQL 中操作文本字段中的数字数据可能具有挑战性。要从此类字段中提取连续数字,建议使用 MySQL 函数或外部库。

使用 LIB_MYSQLUDF_PREG 库:

LIB_MYSQLUDF_PREG 库提供强大的正则表达式函数,包括用于子字符串提取的 PREG_CAPTURE。通过将此库安装到 MySQL 中,您可以访问以下函数:

  • PREG_CAPTURE(regex, string): 根据指定的正则表达式从字符串中提取第一个匹配的子字符串。

自定义函数更简单提取:

或者,可以创建以下自定义 MySQL 函数来进行基本提取:

CREATE FUNCTION REGEXP_EXTRACT(string TEXT, exp TEXT)
RETURNS TEXT
DETERMINISTIC
BEGIN
  -- Extract longest matching substring adjusted for ^ or $ in regex
登录后复制

用法:

使用这个函数,如下调用:

SELECT REGEXP_EXTRACT(originaltext, '[0-9][0-9]') AS extracted_digits
FROM source
WHERE originaltext regexp '[0-9][0-9]'
登录后复制

这将提取第一个匹配的每个匹配的原始文本中的一对数字。可以根据需要将其他条件添加到查询中,例如将提取的数字与值进行比较。

以上是如何从 MySQL 文本字段中提取连续的数字?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板