Die Funktion BPCHARCMP - Amazon Redshift

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Die Funktion BPCHARCMP

Vergleicht den Wert zweier Zeichenfolgen und gibt eine Ganzzahl aus. Wenn die Zeichenfolgen identisch sind, gibt die Funktion 0 zurück. Ist die erste Zeichenfolge alphabetisch größer, gibt die Funktion 1 zurück. Ist die zweite Zeichenfolge größer, gibt die Funktion -1 zurück.

Im Fall von Multibyte-Zeichen basiert der Vergleich auf der Byte-Kodierung.

Synonym von Die Funktion BTTEXT_PATTERN_CMP.

Syntax

BPCHARCMP(string1, string2)

Argumente

string1

Eine CHAR- oder VARCHAR-Zeichenfolge.

string2

Eine CHAR- oder VARCHAR-Zeichenfolge.

Rückgabetyp

INTEGER

Beispiele

In den folgenden Beispielen wird die Tabelle USERS aus der TICKIT-Beispieldatenbank verwendet. Weitere Informationen finden Sie unter Beispieldatenbank.

Verwenden Sie das folgende Beispiel, um für die ersten zehn Einträge in der USERS-Tabelle zu bestimmen, ob der Vorname eines Benutzers alphabetisch größer als der Nachname des Benutzers ist. Für Einträge, bei denen die Zeichenfolge für FIRSTNAME alphabetisch nach der Zeichenfolge für LASTNAME steht, gibt die Funktion 1 zurück. Wenn LASTNAME alphabetisch nach FIRSTNAME steht, gibt die Funktion -1 zurück.

SELECT userid, firstname, lastname, BPCHARCMP(firstname, lastname) FROM users ORDER BY 1, 2, 3, 4 LIMIT 10; +--------+-----------+-----------+-----------+ | userid | firstname | lastname | bpcharcmp | +--------+-----------+-----------+-----------+ | 1 | Rafael | Taylor | -1 | | 2 | Vladimir | Humphrey | 1 | | 3 | Lars | Ratliff | -1 | | 4 | Barry | Roy | -1 | | 5 | Reagan | Hodge | 1 | | 6 | Victor | Hernandez | 1 | | 7 | Tamekah | Juarez | 1 | | 8 | Colton | Roy | -1 | | 9 | Mufutau | Watkins | -1 | | 10 | Naida | Calderon | 1 | +--------+-----------+-----------+-----------+

Verwenden Sie das folgende Beispiel, um alle Einträge der Tabelle USERS zurückzugeben, für welche die Funktion 0 zurückgibt. Die Funktion gibt 0 zurück, wenn FIRSTNAME mit LASTNAME identisch ist.

SELECT userid, firstname, lastname, BPCHARCMP(firstname, lastname) FROM users WHERE BPCHARCMP(firstname, lastname)=0 ORDER BY 1, 2, 3, 4; +--------+-----------+----------+-----------+ | userid | firstname | lastname | bpcharcmp | +--------+-----------+----------+-----------+ | 62 | Chase | Chase | 0 | | 4008 | Whitney | Whitney | 0 | | 12516 | Graham | Graham | 0 | | 13570 | Harper | Harper | 0 | | 16712 | Cooper | Cooper | 0 | | 18359 | Chase | Chase | 0 | | 27530 | Bradley | Bradley | 0 | | 31204 | Harding | Harding | 0 | +--------+-----------+----------+-----------+