Heim  >  Artikel  >  Datenbank  >  So ersetzen Sie einen Teil einer Zeichenfolge in MySQL

So ersetzen Sie einen Teil einer Zeichenfolge in MySQL

青灯夜游
青灯夜游Original
2021-12-03 18:50:0756790Durchsuche

MySQL-Methode zum Ersetzen eines Teils einer Zeichenfolge: 1. Verwenden Sie die Funktion REPLACE(), die Syntax „REPLACE (Zeichenfolge, Suchwert, Ersatzwert)“; 2. Verwenden Sie die Funktion INSERT(), die Syntax „INSERT (Zeichenfolge). , Ersetzungsanfang) Position, Anzahl der zu ersetzenden Zeichen, Ersatzwert)“.

So ersetzen Sie einen Teil einer Zeichenfolge in MySQL

Die Betriebsumgebung dieses Tutorials: Windows7-System, MySQL8-Version, Dell G3-Computer.

MySQL ersetzt einen Teil der Zeichenfolge

1. Verwenden Sie die Funktion REPLACE()

REPLACE(), um alle Vorkommen der Teilzeichenfolge in der Zeichenfolge durch neue Teilzeichenfolgen zu ersetzen.

Hinweis: Diese Funktion führt Ersetzungen unter Berücksichtigung der Groß- und Kleinschreibung durch.

Syntax

REPLACE(string, from_string, new_string)
Parameter Beschreibung
Zeichenfolge Erforderlich. Ursprüngliche Zeichenfolge
from_string Erforderlich. Der zu ersetzende Teilstring
new_string Erforderlich. Neuer Ersatz-Teilstring

[Beispiel] Verwenden Sie die REPLACE-Funktion, um String-Ersetzungsvorgänge durchzuführen

mysql> SELECT REPLACE('aaa.mysql.com','a','w');
+----------------------------------+
| REPLACE('aaa.mysql.com','a','w') |
+----------------------------------+
| www.mysql.com                    |
+----------------------------------+
1 row in set (0.00 sec)

Wie aus den laufenden Ergebnissen ersichtlich ist, verwenden Sie REPLACE('aaa.mysql.com', 'a', 'w') Ersetzen Sie das Zeichen „a“ in der Zeichenfolge „aaa.mysql.com“ durch das Zeichen „w“, und das Ergebnis ist „www.mysql. com code>". REPLACE('aaa.mysql.com','a','w') 将“aaa.mysql.com”字符串的“a”字符替换为“w”字符,结果为“www.mysql.com”。

2、使用INSERT()函数

INSERT()函数在指定位置的字符串中插入一个字符串,并插入一定数量的字符。

语法

INSERT(string, position, number, string2)
参数 描述
string 必须项。要修改的字符串
position 必须项。插入string2的位置
number 必须项。要替换的字符数
string2 必须项。要插入字符串的字符串

若 position 超过字符串长度,则返回值为原始字符串。假如 number 的长度大于其他字符串的长度,则从位置 position 开始替换。若任何一个参数为 NULL,则返回值为 NULL。

【实例】使用 INSERT 函数进行字符串替换操作

mysql> SELECT INSERT('Football',2,4,'Play') AS col1,
    -> INSERT('Football',-1,4,'Play') AS col2,
    -> INSERT('Football',3,20,'Play') AS col3;
+----------+----------+--------+
| col1     | col2     | col3   |
+----------+----------+--------+
| FPlayall | Football | FoPlay |
+----------+----------+--------+
1 row in set (0.04 sec)

由执行结果可知:

  • 第一个函数 INSERT('Football',2,4,'Play') 将“Football”从第 2 个字符开始长度为 4 的字符串替换为 Play,结果为“FPlayall”;

  • 第二个函数 INSERT('Football',-1,4,'Play') 中的起始位置 -1 超出了字符串长度,直接返回原字符串;

  • 第三个函数 INSERT('Football',3,20,'Play')

  • 2. Verwenden Sie die Funktion INSERT()

Die Funktion INSERT() fügt an der angegebenen Position eine Zeichenfolge in die Zeichenfolge ein und fügt eine bestimmte Anzahl von Zeichen ein.

Syntax🎜rrreee🎜🎜🎜🎜Parameter🎜🎜Beschreibung🎜🎜🎜🎜🎜Zeichenfolge🎜🎜🎜Erforderlich. Die zu ändernde Zeichenfolge🎜🎜🎜🎜position🎜🎜🎜Erforderlich. Geben Sie die Position von 🎜string2🎜🎜🎜🎜 🎜number🎜🎜🎜Erforderlich ein. Anzahl der zu ersetzenden Zeichen🎜🎜🎜🎜🎜string2🎜🎜🎜Erforderlich. Die Zeichenfolge zum Einfügen der 🎜Zeichenfolge🎜🎜🎜🎜🎜🎜Wenn die Position die Zeichenfolgenlänge überschreitet, ist der Rückgabewert die ursprüngliche Zeichenfolge. Wenn die Länge der Zahl größer ist als die Länge anderer Zeichenfolgen, beginnt die Ersetzung an der Position position. Wenn ein Parameter NULL ist, ist der Rückgabewert NULL. 🎜🎜[Beispiel] Verwenden Sie die INSERT-Funktion, um String-Ersetzungsvorgänge durchzuführen🎜rrreee🎜Dies ist aus den Ausführungsergebnissen ersichtlich:🎜
  • 🎜Die erste Funktion INSERT( 'Football', 2, 4, 'Play') Ersetzen Sie „Football“ durch eine Zeichenfolge der Länge 4, beginnend mit dem 2. Zeichen, und das Ergebnis ist „FPlayall“
  • 🎜Second Die Startposition -1 in der Funktion INSERT('Football', -1, 4, 'Play') überschreitet die Länge der Zeichenfolge und gibt direkt die ursprüngliche Zeichenfolge zurück; 🎜🎜
  • 🎜th Die Ersetzungslänge der drei Funktionen INSERT('Football', 3, 20, 'Play') überschreitet die Länge der ursprünglichen Zeichenfolge. Ab dem 3. Zeichen werden alle folgenden Zeichen abgefangen und durch Specify the Character Play ersetzt, und das Ergebnis ist „FoPlay“. 🎜🎜🎜🎜【Verwandte Empfehlungen: 🎜MySQL-Video-Tutorial🎜】🎜

Das obige ist der detaillierte Inhalt vonSo ersetzen Sie einen Teil einer Zeichenfolge in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn