Dieses SQL-Tutorial konzentriert sich auf die String-Konkatenation in Oracle und bietet Erklärungen, Beispiele und Übungen. Die Übungen zu dieser Lektion finden Sie unter diesem Link.
Dieses Tutorial ist ein Teil von mehreren Beiträgen, die erklären, wie man grundlegende Abfragen in Oracle schreibt. Um weitere Beiträge zu diesem Thema zu lesen, verwenden Sie bitte die folgenden Links:
- Grundlegende SQL-SELECT-Anweisungen schreiben
- SQL-Arithmetik-Operatoren
- SQL-Spalten-Aliase
- SQL-String-Konkatenation
- SQL-Schlüsselwort DISTINCT
Oracle String-Konkatenation
Mit der String-Konkatenation in Oracle können Sie einen String an das Ende eines anderen Strings anhängen. Um den Inhalt von zwei oder mehr Spalten unter dem Namen einer einzigen Spalte anzuzeigen, können Sie den Verkettungsoperator mit doppelter Pipe (||) verwenden.
Um beispielsweise den Namen eines Produkts zusammen mit seinem Preis anzuzeigen, verwenden Sie die folgende Oracle-SQL-Anweisung:
SELECT product_name || unit_priceFROM products
Das Ergebnis :
product_name || unit_price--------------------------Tea30
Oracle – Zwei Felder mit einem Leerzeichen verketten
Während im vorherigen Beispiel das gewünschte Ergebnis – das Zusammenführen zweier Werte aus zwei verschiedenen Spalten – erreicht wurde, ist das Endergebnis immer noch ziemlich unleserlich, da wir kein Leerzeichen als Trennzeichen zwischen dem Produktnamen und dem Preis haben. Daher ist es ratsam, zusätzlich ein Leerzeichen (‚ ‚) zu verketten :
SELECT product_name || ' ' || unit_priceFROM products
Das Ergebnis :
product_name || ' ' || unit_price---------------------------------Tea 30
Verwendung eines Oracle-Spaltenalias
Um das Ergebnis lesbarer zu machen, verwenden Sie einen Oracle-Spaltenalias:
SELECT product_name || ' ' || unit_price AS "ProductDescription"FROM products
Das Ergebnis :
ProductDescription------------------Tea 30
Oracle – Zusätzliche Spalten abrufen
Wenn Sie nach oder vor dieser Verkettung eine zusätzliche separate Spalte anzeigen möchten, verwenden Sie einfach ein Komma (,):
SELECT product_id, product_name || ' ' || unit_price AS "ProductDescription", supplier_idFROM products
Das Ergebnis:
product_id ProductDescription supplier_id---------- ------------------ -------------23 Tea 30 13