Manchmal ist es erforderlich, die Ergebnisse mehrerer verschiedener Felder zu kombinieren (kaskadieren). In jeder Datenbank gibt es dazu eine Methode:
- MySQL: CONCAT( )
- Oracle: CONCAT( ), ||
- SQL Server: +
Die Syntax für CONCAT( ) sieht folgendermaßen aus:
CONCAT(str1, str2, str3, ...): Die Zeichenketten str1, str2, str3 und alle weiteren Zeichenketten werden zusammengefasst. Beachten Sie bitte, dass die Funktion CONCAT( ) in Oracle nur zwei Argumente erlaubt, es lassen sich damit nur jeweils zwei Zeichenketten gleichzeitig zusammenfügen. Zur Kaskadierung von mehr als zwei Zeichenketten gibt es jedoch in Oracle die Funktion '||'.
Sehen wir uns einige Beispiele an. Dabei gehen wir von folgender Tabelle aus:
Tabelle Geography
| region_name |
store_name |
| East |
Boston |
| East |
New York |
| West |
Los Angeles |
| West |
San Diego |
Beispiel 1:
MySQL/Oracle:
SELECT CONCAT(region_name,store_name) FROM Geography
WHERE store_name = 'Boston';
Ergebnis:
'EastBoston'
Beispiel 2:
Oracle:
SELECT region_name || ' ' || store_name FROM Geography
WHERE store_name = 'Boston';
Ergebnis:
'East Boston'
Beispiel 3:
SQL Server:
SELECT region_name + ' ' + store_name FROM Geography
WHERE store_name = 'Boston';
Ergebnis:
'East Boston'