Die concat -Funktion in AWS Redshift wird verwendet, um zwei oder mehr Strings zu verkettet (joinieren) und die resultierende Zeichenfolge zurückgibt. Der Datentyp der resultierenden Variablen entspricht dem der Eingabevariablen zur Konzernfunktion. Die Konzernfunktion kann auf einer einzigen Zeichenfolge nicht anwendbar sein. Es kann auf zwei und mehr als zwei Saiten anwendbar sein. Falls wir die Konzernfunktion auf mehr als zwei Zeichenfolgen anwenden möchten, wird eine verschachtelte Konzernfunktion verwendet. Die Konzernfunktion entspricht dem Verkettungsoperator (||), der zwischen zwei Zeichenfolgen oder Ausdrücken verwendet wird.
Syntax der Konzernfunktion
Die Syntax für die Konzernfunktion ist im Folgenden angegeben:
1 | Concat (Zeichenfolge 1, Zeichenfolge 2) |
Wo beide Argumente "String 1" und "String 2" kann von fester Länge oder von Zeichenfolgen variabler Länge sein.
Wenn die Eingabezeichenfolgen unterschiedliche Datentypen ausmachen. Wenn Werte nicht gegossen werden können, wird ein Fehler aus der Amazon Redvershift zurückgegeben.
Beispiele bei der Verwendung der Konzernfunktion
Nehmen wir einige Beispiele, um die Arbeit der Konzernfunktion vollständig zu verstehen. Dieser Abschnitt enthält mehrere Beispiele, um die Konzernfunktion besser zu verstehen.
Einfache String -Verkettung
In diesem Beispiel werden wir die beiden Saiten verkettet - "AWS" und "Rotverschiebung". Verwenden Sie die folgende Rotverschiebungsanfrage, um diese Saiten zu verkettet:
1 | Wählen Sie concat ('aws', 'redshift'); |
Die Ausgabe dieser Abfrage ist wie folgt:
1 2 3 | AWS Rotverschiebung |
Das gleiche Ergebnis kann auch mit dem Verkettungsoperator generiert werden (||). Verwenden Sie die folgende Abfrage, um die Zeichenfolgen mit dem Verkettungsoperator im Rotverschiebungscluster zu verkettet:
1 | Wählen Sie 'AWS' || '' Rotverschiebung '; |
Die Ausgabe dieser Abfrage ist wie folgt:
1 2 3 | AWS Rotverschiebung |
Lassen Sie uns nun versuchen, die Saiten zu verkettet, "21. Mai" und "2022". Die folgende Rotverschiebungsanfrage verkettet diese Saiten mithilfe der Concat -Funktion:
1 | Wählen Sie Concat ('21. Mai', ', 2022'); |
Es erzeugt die folgende Ausgabe. Denken Sie daran, dass der Datentyp dieser Abfrage die Zeichenfolge ist, da beide Eingabeparameter Zeichenfolgen sind:
1 2 3 | 21. Mai 2022 |
Versuchen Sie das gleiche Beispiel, aber diesmal mit einem Verkettungsoperator (||). Das Folgende ist die Anfrage zur Verkettung dieser Saiten:
1 | Wählen Sie '21. Mai' || '' , 2022 '; |
Diese Abfrage führt in der folgenden Ausgabe:
1 2 3 | 21. Mai 2022 |
Verschachtelte Verkettung
Wenn Sie mehr als zwei Zeichenfolgen verkettet möchten, wird die verschachtelte Konzernfunktion verwendet. Auf die gleiche Weise kann der Verkettungsoperator (||) auch verwendet werden, um zwei oder mehr als zwei Saiten im Rotverschiebungscluster zu verketten. In diesem Abschnitt verwenden wir sowohl den Verkettungsoperator (||) als auch die CONCAT -Funktion, um die verschachtelte Verkettung zu implementieren.
Im folgenden Beispiel werden wir versuchen, mehr als zwei Saiten zu verkettet, um die Konzernfunktion besser zu verstehen. Die erste Saite ist ein Tag, ich.e. "Samstag". Die zweite Zeichenfolge ist ein Datum und ein Monat, ich.e. "21. Mai". Und die dritte Saite ist ein Jahr, ich.e. "2022".
Die folgende Abfrage wird verwendet, um die verschachtelte Verkettung auf diesen Zeichenfolgen umzusetzen:
1 | Wählen Sie concat ("samstags", concat ("21. Mai", "2022"); |
Diese Abfrage erzeugt die folgende Ausgabe:
1 2 3 | Samstag, 21. Mai 2022 |
Um mehrere Zeichenfolgen zu verkettet, verwenden wir den Verkettungsoperator (||) anstelle der Konzertfunktion im Rotverschiebungscluster. Der Verkettungsoperator (||) nimmt die Saiten von beiden Seiten aus und verkettet sie, um die Ausgabe zu erzeugen.
Die folgende Abfrage verkettet mehrere Zeichenfolgen mit dem Verkettungsoperator (||):
1 | Wählen Sie 'Samstag,' || '21. Mai' || '2022'; |
Die Ausgabe dieser Abfrage ist wie folgt:
1 2 3 | Samstag, 21. Mai 2022 |
Umgang mit Nullwerten in der Rotverschiebung
Wenn wir einen oder mehrere Nullwerte an die Konzernfunktion übergeben, ist das Ergebnis leer. Um den leeren Wert zu überprüfen.
In der folgenden Abfrage ist ein Parameter der Konzernfunktion null:
1 | Wählen Sie concat ('aws redshift', null); |
Bei der Ausführung erzeugt diese Abfrage eine leere Ausgabe.
Jetzt werden wir das gleiche Beispiel unter Verwendung eines Verkettungsoperators (||) anstelle der Konzernfunktion versuchen:
1 | Wählen Sie 'AWS RedShift' || null; |
Die Ausgabe dieser Abfrage ist ebenfalls leer.
Um den Nullwert in den Daten zu lösen, NVL Befehl wird verwendet. NVL Der Befehl ist für die Behandlung der Nullwerte in den Daten verantwortlich.
Jetzt nehmen wir ein Beispiel, in dem wir die verwenden NVL um mit dem zu handhaben NULL Parameter. Dafür verwenden wir die Null -Handhabungsfunktion, ich.e. NVL, Um die Nullwerte zu bewältigen.
Die folgende Abfrage kann verwendet werden, um die Zeichenfolge und die zu verkettet werden NULL Parameter von der behandelt NVL Funktion:
1 | Wählen Sie concat ('aws redshift', nvl (null, ")); |
Es erzeugt die folgende Ausgabe und nimmt die NULL Parameter als leere Zeichenfolge:
1 2 3 | AWS Rotverschiebung |
Versuchen Sie das gleiche Beispiel, aber diesmal mit einem Verkettungsoperator:
1 | Wählen Sie 'AWS RedShift' || Nvl (null, "); |
Das Folgende ist die Ausgabe für diese Abfrage:
1 2 3 | AWS Rotverschiebung |
Anwenden der Konzernfunktion auf der Rotverschiebungstabelle
In diesem Abschnitt werden wir die Koncat -Funktion in der Tabelle anwenden. Wir werden eine von AWS festgelegte Datenbank verwenden, um die Koncat -Funktion darauf anzuwenden.
Wir werden die Concat -Funktion auf die anwenden Veranstaltungsort Tabelle bereitgestellt durch die Amazon Redvershift. Wir werden beide verkettet Venuename- und Venucity -Kolumnen, an denen Veranstaltungsorte ergriffen werden sind größer als 75000.
Die folgende Abfrage verkettet die Daten von Venuename und Venuezität Wo die Veranstaltungsorte mehr als 75000 sind:
1 2 3 4 5 | Wählen Sie Concat (Venuename, Venuecity) |
Die Ausgabe dieser Abfrage ist wie folgt:
1 2 3 4 5 6 7 8 9 | FedExfieldlandover |
Versuchen Sie nun dieses Beispiel mit einem Verkettungsoperator. Aber wir verkettet das Venuezität und Veuestate Spalten diesmal. Außerdem ändern wir den Zustand von Veranstaltungsorte bis 73500:
1 2 3 4 5 6 7 | Wählen Sie Venuecity || venuEstate |
Es erzeugt das folgende Ergebnis:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Jacksonvillefl |
Jetzt wenden wir das Konzept der Verachtung an Concat Funktion in der Veranstaltungsort Tisch. Die Abfrage verkettet die Venuename und Venuezität Werte aus der Tabelle. Fügen Sie auch die Kommas und Räume in die resultierende Zeichenfolge hinzu:
1 2 3 4 5 6 7 | Wählen Sie Concat (concat (venuename, ','), Venuecity) |
Die Ausgabe dieser Abfrage ist wie folgt:
1 2 3 4 5 6 7 8 9 10 11 | Delphinstadion, Miami Gärten |
In diesem folgenden Beispiel werden wir die Spalte verkettet, die den Null enthält, um das Konzept des Umgangs mit dem Umgang mit NULL mit der NVL Funktion:
1 2 3 4 5 6 7 | Wählen Sie Concat (Venuename, concat ('Sitze', NVL (Veranstaltungsorte, 0)) |
Diese Abfrage erzeugt das folgende Ergebnis bei der Ausführung:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Ballys Hotelsitze 0 |
Abschluss
In diesem Artikel haben wir mithilfe mehrerer Beispiele mithilfe mehrerer Beispiele besprochen, wie die Konzernfunktion verwendet wird. Wir haben das Konzept der Konzertfunktion, der verschachtelten Konzernfunktion und des Verkettungsoperators angewendet. Wir haben untersucht. Die AWS Redshift Concat -Funktion bietet das volle Privileg, die zwei oder mehr Zeichenfolgen in Ihre Datenbank zu verkettet.