我正在尝试在MySQL中编写一个查询来更新字段,方法是在现有文本的开头添加一个新的文本字符串,创建一个新行,然后添加原始文本。
我已经查看了regexp,但我不确定我是否正确使用它,因为我的查询似乎不适用于匹配。
我使用的查询如下:
UPDATE table_name SET field = REPLACE(field, 'REGEXP ^', ''new_text' REGEXP \n field');
^表示我希望在字段中更新的字符串的开头(文本的开头)。
替换文本由new_text字符串,新行(\ n)和原始字段组成。
我对MySQL比较陌生,所以对这个查询的结构以及是否可以实现的任何见解都将非常感激。
答案 0 :(得分:0)
你不需要正则表达式。
如果你有一张人的表
+----+-------+
| id | name |
+----+-------+
| 1 | Bob |
| 2 | Frank |
+----+-------+
否则
UPDATE people SET name = CONCAT('Mr. ', name) WHERE id = 1;
会给你
+----+---------+
| id | name |
+----+---------+
| 1 | Mr. Bob |
| 2 | Frank |
+----+---------+