现有数据库包含一个名为“dependent_ages”的字段,一些示例数据看起来像“1,2,5”或“1yo and 3mo”或“4mo”。
要求是将这样的字符串转换成整数,也就是用“,”或“and”分隔的子串的个数。更准确地说,分隔符可以描述为正则表达式“,|\sand\s”。所以对于上面的例子,转换后的整数是 3、2 和 1。基本上,我感兴趣的是存在多少匹配,而不是这些匹配的值。因此,无论单个值是“14yo”还是“4mo”,都将计为 1。
问题是找到一个可以做到这一点的 MySQL 表达式,例如
SELECT REGEXMATCHES(dependent_ages) as dependent_no ...
更新
一些答案/评论显示了对这个问题的一些普遍误解,所以我澄清了这个问题。