Amazon Redshift non supporterà più la creazione di nuovi Python UDFs a partire dalla Patch 198. Python esistente UDFs continuerà a funzionare fino al 30 giugno 2026. Per ulteriori informazioni, consulta il post del blog
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Funzione CONCAT
La funzione CONCAT concatena due espressioni e restituisce l'espressione risultante. Per concatenare più di due espressioni, utilizzare le funzioni CONCAT nidificate. L'operatore di concatenazione (||) tra due espressioni produce gli stessi risultati della funzione CONCAT.
Sintassi
CONCAT ( expression1, expression2 )
Arguments (Argomenti)
- expression1, expression2
-
Entrambi gli argomenti possono essere una stringa di caratteri a lunghezza fissa, una stringa di caratteri a lunghezza variabile, un'espressione binaria o un'espressione che valuta uno di questi input.
Tipo restituito
CONCAT restituisce un'espressione. Il tipo di dati dell'espressione è lo stesso tipo degli argomenti di input.
Se le espressioni di input sono di tipo diverso, Amazon Redshift tenta di digitare implicitamente una delle espressioni. Se non è possibile eseguire il cast di valori, viene restituito il valore nullo.
Note per l'utilizzo
Sia per la funzione CONCAT sia per l'operatore di concatenazione, se una o entrambe le espressioni sono nulle, il risultato della concatenazione è nullo.
Esempi
L'esempio seguente concatena due letterali di caratteri:
SELECT CONCAT('December 25, ', '2008');concat ------------------- December 25, 2008 (1 row)
La seguente query, utilizzando l'operatore || invece di CONCAT, produce lo stesso risultato:
SELECT 'December 25, '||'2008';?column? ------------------- December 25, 2008 (1 row)
L'esempio seguente utilizza una funzione CONCAT nidificata all'interno di un'altra funzione CONCAT per concatenare tre stringhe di caratteri:
SELECT CONCAT('Thursday, ', CONCAT('December 25, ', '2008'));concat ----------------------------- Thursday, December 25, 2008 (1 row)
Per concatenare colonne che potrebbero contenere NULLs, usa ilFunzioni NVL e COALESCE, che restituisce un determinato valore quando incontra NULL. Il seguente esempio utilizza NVL per restituire uno 0 ogni volta che si incontra NULL.
SELECT CONCAT(venuename, CONCAT(' seats ', NVL(venueseats, 0))) AS seating FROM venue WHERE venuestate = 'NV' OR venuestate = 'NC' ORDER BY 1 LIMIT 5;seating ----------------------------------- Ballys Hotel seats 0 Bank of America Stadium seats 73298 Bellagio Hotel seats 0 Caesars Palace seats 0 Harrahs Hotel seats 0 (5 rows)
La query seguente concatena i valori CITY e STATE dalla tabella VENUE:
SELECT CONCAT(venuecity, venuestate) FROM venue WHERE venueseats > 75000 ORDER BY venueseats;concat ------------------- DenverCO Kansas CityMO East RutherfordNJ LandoverMD (4 rows)
La seguente query utilizza funzioni CONCAT nidificate. La query concatena i valori CITY e STATE dalla tabella VENUE ma delimita la stringa risultante con una virgola e uno spazio:
SELECT CONCAT(CONCAT(venuecity,', '),venuestate) FROM venue WHERE venueseats > 75000 ORDER BY venueseats;concat --------------------- Denver, CO Kansas City, MO East Rutherford, NJ Landover, MD (4 rows)
L'esempio seguente concatena due espressioni binarie. Dove abc è un valore binario (con una rappresentazione esadecimale di 616263) e def è un valore binario (con rappresentazione esadecimale di 646566). Il risultato viene visualizzato automaticamente come rappresentazione esadecimale del valore binario.
SELECT CONCAT('abc'::VARBYTE, 'def'::VARBYTE);concat ------------------- 616263646566