In MySQL kann die Funktion INSTR() verwendet werden, um den Index des ersten Vorkommens eines Teilstrings zu ermitteln. Wenn jedoch die Notwendigkeit besteht, den Index des letzten Vorkommens zu ermitteln, erfüllt keine integrierte Funktion diese Anforderung.
Als alternativer Ansatz Eine Kombination der Funktionen REVERSE() und LOCATE() kann verwendet werden, um das letzte Vorkommen eines Zeichens oder einer Teilzeichenfolge zu finden. Die Strategie besteht darin, die Zeichenfolge umzukehren, den Index mit LOCATE() zu identifizieren und dann das Ergebnis von der Länge der ursprünglichen Zeichenfolge zu subtrahieren.
Zum Beispiel ruft die folgende Anweisung den letzten Index des Unterstrichzeichens in der Zeichenfolge ab „ Have_a_good_day":
SELECT CHAR_LENGTH("Have_a_good_day") - LOCATE('_', REVERSE("Have_a_good_day"))+1;
Um den linken Teil der Zeichenfolge vor dem letzten Vorkommen des Trennzeichens zu extrahieren, verwenden Sie:
SELECT LEFT("first_middle_last", CHAR_LENGTH("first_middle_last") - LOCATE('_', REVERSE("first_middle_last")));
Um den rechten Teil der Zeichenfolge nach dem letzten Vorkommen des Trennzeichens zu isolieren, wird eine alternative Methode mit der Funktion SUBSTRING_INDEX() empfohlen:
SELECT SUBSTRING_INDEX("first_middle_last", '_', -1);
Während es für LOCATE() praktisch wäre, eine Option für die Suche von rechts einzuschließen, bieten diese Techniken effektive Lösungen zum Abrufen des letzten Index eines Teilstrings in MySQL.
Das obige ist der detaillierte Inhalt vonWie finde ich den letzten Index eines Teilstrings in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!