1

我有一个带有字段 F1、F2 和 F3 的 mysql 表(在 AWS RDS 中)。F1 有像'abc-def'这样的字符串。我需要做的是通过连字符将 F1 值拆分为两个字符串('abc' 和 'def')并将它们存储到同一行的 F2 和 F3 中。

更改前的记录:

F1: abc-def 
F2:
F3:

更改后的记录:

F1: abc-def
F2: abc
F3: def

似乎 mysql 确实支持正则表达式但不支持反向引用。我最后的手段是使用 mysqldump 但我想看看是否有任何方法可以直接在 mysql 中执行此操作。

任何回复表示赞赏!

4

2 回答 2

0

还有另一篇文章使用逗号作为分隔符进行了讨论,在Can Mysql Split a column?. 只需执行更新过程,将两列设置为 substring_index 结果。

于 2013-05-14T22:24:39.440 回答
-1

尝试像这样在连字符处使用explode函数......

$exploded = explode('-', 'abc-def');

它会将 abc 和 def 放入一个数组中,然后您可以将它们存储在相应的位置

f2 = $exploded[0]; <-- meaning abc
f3 = $exploded[1]; <-- meaning def
于 2013-05-14T22:18:24.010 回答