mysql - MYSQL - 如何从字符串中提取数值?
问题描述
我在数据库中获得了可能具有如下格式的字符串值:
hdpos1234x93m4s9034z1
ryhp5x908m4s1s
不幸的是,我没有 MySQL 版本 8 来使用该REGEX_SUBSTR
功能。我正在尝试获取“x”之前和之后的数字值。
所以我想要这些值。任何见解都会很棒。
1234 93
5 908
解决方案
很明显,您可以使用一些托管语言(例如 Python 或 PHP)阅读这些专栏,然后使用其正则表达式支持来做您想做的事情。要限制您需要读取的行数,您可以使用该RLIKE
函数(我知道它在 MySQL 5.6 中可用):
SELECT x FROM mytable WHERE x RLIKE '[0-9]x[0-9]'
这应该选择包含由x
in column分隔的两个数字的行x
。当然,您可以使用更适合您需要的不同模式。
推荐阅读
- sql-server - 将 11 小时添加到 SQL Server 中的 datetime2 列
- ruby-on-rails - RSPEC 中的存根 JSON.parse
- vue.js - 在 VueJS 中拖放
- css - 如何确定我的 CSS 选择器从哪里被覆盖?时间线.js
- typescript - 打字稿:更新对象
- php - 按另一列的值按计划更新每一列
- ios - UIBezierpath setLineDash 圆弧粗细
- excel - 从字母数字字符串的左侧删除文本,不同长度的文本
- c - 并集内的并集,以及破碎的矩阵加法
- scala - Scala Slick joinLeft 和组合条件