这是一个相当奇怪的问题......我相信它会涉及某种与MySQL的正则表达式。
假设我对表有查询,如下所示:
>select description from foo;
----------------------------------
| description |
----------------------------------
Kitten, 3 in., Lightsaber
Mouse, 5.5 in., Luke Skywalker
Dog, 9.000 in., Death Star
有没有办法更新foo,使得“inches”(in。)部分的位数为三位小数。
即。更新后:
>select description from foo;
-----------------------------------
| description |
-----------------------------------
Kitten, 3.000 in., Lightsaber
Mouse, 5.500 in., Luke Skywalker
Dog, 9.000 in., Death Star
非常感谢任何建议/指导!感谢。
答案 0 :(得分:1)
根据the documentation,这在SELECT
命令中是不可能的。
REGEXP
只会告诉您它是否匹配;它不提供匹配索引或替换。
您应该将数据导出为平面文本文件,使用您喜欢的Regex启用文本编辑器对其进行处理,然后将数据重新应用到全新的数据结构中。说真的,您必须更改您的数据库设计。
<强>更新强>
经过进一步调查后,似乎我的答案应该是:开箱即用。
检查此主题:How to do a regular expression replace in MySQL?您可以通过SQL通过UDF执行此操作。