Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在mysql中剪切文本_Mysql_Sql - Fatal编程技术网

在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说的那样发生。检查我的答案。