MySQL INSTR()-Funktion

Mysql Instr Funktion



In diesem Tutorial lernen wir, wie Sie die MySQL-Funktion INSTR() verwenden, um die Position des ersten Vorkommens einer bestimmten Teilzeichenfolge zu bestimmen.

MySQL INSTR()-Funktion

Mit der Funktion instr() können wir einen String und einen Teilstring bereitstellen. Die Funktion bestimmt, ob die Teilzeichenfolge in der Quellzeichenfolge vorhanden ist. Wenn die Teilzeichenfolge vorhanden ist, gibt die Funktion die Position des ersten Vorkommens der Teilzeichenfolge in der Quellzeichenfolge zurück.

Wenn die Teilzeichenfolge nicht in der Quellzeichenfolge vorhanden ist, gibt die Funktion 0 zurück.







Das Folgende demonstriert die Syntax der Funktion instr():



INSTR(src_string, sub_string);

Die Funktion akzeptiert zwei Hauptparameter:



  1. Die src_string bezieht sich auf die Quellzeichenfolge, in der Sie suchen möchten.
  2. Der sub_string definiert den Teilstring, nach dem Sie suchen.

Beachten Sie, dass bei der Funktion instr() die Groß- und Kleinschreibung nicht beachtet wird. Daher findet die Funktion nur übereinstimmende Muster ohne Rücksicht auf die Groß- und Kleinschreibung,





Um eine Suche mit Berücksichtigung der Groß-/Kleinschreibung durchzuführen, können Sie andere Tools verwenden, z. B. den binären Operator.

Beispielfunktionsverwendung

Die folgenden Beispiele zeigen, wie wir die Funktion instr() verwenden können, um nach einem bestimmten Teilstring zu suchen.



SELECT INSTR('MySQL ist eine tolle Datenbank-Engine', 'Datenbank') as pos;

Das obige Beispiel gibt die Startposition der Zeichenfolge „Datenbank“ aus der Quellzeichenfolge zurück. In diesem Fall ist die Position der Datenbankzeichenfolge 21, wie in der folgenden Ausgabe gezeigt:

Pos|

---+

21|

Beispiel 2

Wir können Lower()- oder Upper-Funktionen verwenden, um einen String in Klein- oder Großbuchstaben umzuwandeln. Dies kann uns helfen, die Groß-/Kleinschreibung der Funktion zu überwinden.

Beispiel:

SELECT INSTR(lower('MySQL ist eine tolle Datenbank-Engine'), lower('DATABASE')) as pos;

Ergebnis:

Pos|

---+

21|

Dadurch wird ein ähnlicher Wert wie im ersten Beispiel zurückgegeben, da die Quellzeichenfolge und die Teilzeichenfolge vor dem Suchvorgang in Kleinbuchstaben umgewandelt werden.

Beispiel 3

Wir können die Funktion instr() auch mit einer Tabellenspalte verwenden, wie in der folgenden Syntax gezeigt.

SELECT INSTR(column_name, 'substring')

FROM Tabellenname;

Beispiel:

CREATE TABLE-Blogs (

id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,

title VARCHAR(255) NOT NULL,

Inhalt TEXT NICHT NULL,

date_posted DATUM NICHT NULL,

Autor VARCHAR(255) NICHT NULL

);

Geben Sie einige Daten ein:

IN Blogs EINFÜGEN (Titel, Inhalt, Datum_gepostet, Autor)

WERTE ('Mein erster Blog-Beitrag', 'Dies ist der Inhalt meines ersten Blog-Beitrags.', '2022-12-09', 'Jane Doe');

IN Blogs EINFÜGEN (Titel, Inhalt, Datum_gepostet, Autor)

WERTE ('Mein zweiter Blog-Beitrag', 'Dies ist der Inhalt meines zweiten Blog-Beitrags.', '2022-12-10', 'Jane Doe');

IN Blogs EINFÜGEN (Titel, Inhalt, Datum_gepostet, Autor)

WERTE ('Mein dritter Blog-Beitrag', 'Dies ist der Inhalt meines dritten Blog-Beitrags.', '2022-12-11', 'Jane Doe');

wählen Sie * aus Blogs;

Ergebnistabelle:

Wir können die Funktion instr() verwenden, um die Position des Teilstrings „blog“ in der Inhaltsspalte wie gezeigt zu erhalten:

Titel, instr(content, 'post') von Blogs auswählen;

Ergebnis:

Fazit

In diesem Tutorial haben Sie gelernt, wie Sie die Funktion INSTR() in MySQL verwenden, um die Position eines Teilstrings innerhalb eines Strings zu finden. Bei der Funktion wird zwischen Groß- und Kleinschreibung unterschieden. Daher müssen Sie möglicherweise Funktionen wie Lower und Upper verwenden, um die Suchzeichenfolgen in die gewünschte Groß-/Kleinschreibung umzuwandeln.