SQL Charindex

SQL Charindex
String- und String -Operationen sind universelle Funktionen in allen Datenbanken. Daher ist es fast unmöglich, eine nicht triviale Datenbank ohne Verwendung von String- und Textinformationen zu haben.

In diesem Artikel wird ein Standard -String -Vorgang erörtert: Verwenden von Legacy und Standard SQL, um ein Substring in einer anderen Zeichenfolge zu finden.

Legacy SQL

Wir können die Position eines Substring in Legacy SQL mit der Instr () -Funktion finden.

Die Funktion nimmt eine Zeichenfolge und ein Substring als Argumente. Anschließend gibt es eine einbasierte Indexposition zurück, die das erste Auftreten des Substring bezeichnet.

Wenn das Substring nicht gefunden wird, gibt die Funktion 0 zurück.

Die Funktionssyntax ist wie unten ausgedrückt:

Instr ('String', 'Substring');

Wir können diese Funktion wie unten gezeigt verwenden:

Wählen Sie Instr ('LinuxHint', 'Hinweis') als Position;

Es sollte zurückkehren:

POSITION
6

Wie bereits erwähnt, beginnt der Positionsindex von 1 und nicht 0.

Standard SQL

In Standard -SQL verwenden wir die Funktion strPos (), um den Standort eines Substrings zu erhalten. Die Funktion nimmt zwei Argumente an: die Zeichenfolge und das Subtring.

Es gibt dann eine 1-Index-basierte Position des ersten Auftretens des Substrings zurück. Wenn das Substring nicht gefunden wird, gibt die Funktion 0 zurück.

Die Syntax ist wie unten gezeigt:

Strpos (String, Substring);

Die Beispielverwendung dieser Funktion ist wie unten gezeigt:

WÄHLEN
Strpos ('LinuxHint', 'Tipp') als Position;

Die Abfrage sollte die Position wie gezeigt zurückgeben:

POSITION
6

Datenbankmotorspezifisch

Verschiedene Datenbankmotoren bieten unterschiedliche Funktionen zur Bestimmung der Position eines Substring. Obwohl die Funktionalität gleich bleibt, unterscheidet sich die Namensnamen in verschiedenen Datenbankmotoren.

PostgreSQL & Mysql

Sowohl PostgreSQL als auch MySQL verwenden die Funktion (Position (), um den Standort eines Substrings zu erhalten. Eine Beispielverwendung ist wie gezeigt:

Wählen Sie Position ('Hinweis' in 'LinuxHint') als Position;

Beachten Sie, dass die Funktion den im Bediener verwendet, um anzugeben, welches Substring zu suchen ist. Dies sollte zurückkehren:

POSITION
----------
6
(1 Reihe)

In MySQL können Sie auch die Funktion Locate () verwenden, um die Position eines Substrings zu finden. Eine Beispielnutzung wird unten angezeigt:

MySQL> SCOOD SOCATE ('Hinweis', 'LinuxHint');
-> 6

MS SQL Server

In SQL Server verwenden wir die Funktion charIndex (), um die Position eines Substrings zu bestimmen. Eine Beispielnutzung wird unten angezeigt:

Wählen Sie Charindex ('Hinweis', 'LinuxHint');
-> 6

IBM DB2

In DB2 finden Sie die Substringposition mithilfe der POSTR () -Funktion. Ein Beispiel ist unten gezeigt:

Wählen Sie POSTR ('Hinweis', 'LinuxHint');
-> 6

Abschluss

In diesem Artikel haben wir verschiedene Methoden und Techniken untersucht, um die Position eines Substring in Legacy und Standard SQL zu lokalisieren. Wir haben auch jede Variation der Methoden für verschiedene Datenbankmotoren besprochen.

Um mehr über Standard- und Legacy SQL zu erfahren, bleiben Sie auf dem Laufenden für LinuxHint -Artikel.