在mysql中剪切文本
我有一张桌子:在mysql中剪切文本,mysql,sql,Mysql,Sql,我有一张桌子: Names id | name | text 1 | Mr Paul | aaaa 2 | Mr Marc | bbb 3 | Mr John | ccc 如何使用SQL删除前缀“Mr”?您可以使用函数 SELECT REPLACE(name, 'Mr ', '' ) FROM Names; 要更新表,请执行以下操作: UPDATE Names set name = REPLACE(name, 'Mr ', '' ); 对该任务的优化没有什么评论:如中所述,
Names
id | name | text
1 | Mr Paul | aaaa
2 | Mr Marc | bbb
3 | Mr John | ccc
如何使用SQL删除前缀“Mr”?您可以使用函数
SELECT REPLACE(name, 'Mr ', '' ) FROM Names;
要更新表,请执行以下操作:
UPDATE Names set name = REPLACE(name, 'Mr ', '' );
对该任务的优化没有什么评论:如中所述,您可以使用子字符串
函数实现这一点-如果您知道每行都以Mr
开头,则此方法可能会更快-DB引擎不必查找Mr
字符串(这需要花费一些时间)但任意删掉了前4个字母
组合解决方案(开始时仅匹配Mr
,但使用更快的子字符串
而不是替换
):
您可以使用函数
SELECT REPLACE(name, 'Mr ', '' ) FROM Names;
要更新表,请执行以下操作:
UPDATE Names set name = REPLACE(name, 'Mr ', '' );
对该任务的优化没有什么评论:如中所述,您可以使用子字符串
函数实现这一点-如果您知道每行都以Mr
开头,则此方法可能会更快-DB引擎不必查找Mr
字符串(这需要花费一些时间)但任意删掉了前4个字母
组合解决方案(开始时仅匹配Mr
,但使用更快的子字符串
而不是替换
):
您可以使用
REPLACE
,不过请注意,它会在字段中的任何位置找到实例,而不仅仅是在开始时
e、 g
您可以使用
REPLACE
,不过请注意,它会在字段中的任何位置找到实例,而不仅仅是在开始时
e、 g
这是你的答案
MySQL函数完成任务
UPDATE table
SET name = REPLACE(name, 'Mr ', '')
WHERE name LIKE 'Mr %'
它会更新以Mr
后缀开头的所有名称,这是您的答案
MySQL函数完成任务
UPDATE table
SET name = REPLACE(name, 'Mr ', '')
WHERE name LIKE 'Mr %'
它会更新所有以
Mr
后缀开头的名称您希望它在选择查询中不可见,还是希望更新您的表?我希望更新我的表您希望它在选择查询中不可见,或者你想更新你的表吗?我想更新我的表如何name=Mr BlahMr Blah
?你必须在查询中输入WHERE
条件,否则会发生@Amir said这样的事情。检查我的答案。那么name=Mr BlahMr Blah
呢?你必须在查询中把置于的位置,否则事情会像@Amir说的那样发生。检查我的答案。