

# Concatenación de cadenas y matrices
<a name="concatenating-strings-and-arrays"></a>

La concatenación de cadenas y la concatenación de matrices utilizan técnicas similares.

## Concatenación de cadenas
<a name="concatenating-strings"></a>

Para concatenar dos cadenas, puede utilizar el operador de canalización doble `||`, como en el siguiente ejemplo.

```
SELECT 'This' || ' is' || ' a' || ' test.' AS Concatenated_String
```

Esta consulta devuelve:


****  

| \# | Concatenated\_String | 
| --- | --- | 
| 1 | `This is a test.` | 

Puede utilizar la función `concat()` para lograr el mismo resultado.

```
SELECT concat('This', ' is', ' a', ' test.') AS Concatenated_String
```

Esta consulta devuelve:


****  

| \# | Concatenated\_String | 
| --- | --- | 
| 1 | `This is a test.` | 

Puede utilizar la función `concat_ws()` para concatenar cadenas con el separador especificado en el primer argumento.

```
SELECT concat_ws(' ', 'This', 'is', 'a', 'test.') as Concatenated_String
```

Esta consulta devuelve:


****  

| \# | Concatenated\_String | 
| --- | --- | 
| 1 | `This is a test.` | 

Para concatenar dos columnas del tipo de datos de cadena con un punto, haga referencia a las dos columnas con comillas dobles y agregue comillas simples al punto como una codificación rígida. Si una columna no es del tipo de datos de cadena, puede utilizar `CAST("{{column_name}}" as VARCHAR)` para convertir la columna primero.

```
SELECT "col1" || '.' || "col2" as Concatenated_String
FROM {{my_table}}
```

Esta consulta devuelve:


****  

| \# | Concatenated\_String | 
| --- | --- | 
| 1 | `{{col1_string_value}}.{{col2_string_value}}` | 

## Concatenación de matrices
<a name="concatenating-arrays"></a>

Puede utilizar las mismas técnicas para concatenar matrices.

Para concatenar varias matrices, utilice el operador de canalización doble `||`.

```
SELECT ARRAY [4,5] || ARRAY[ ARRAY[1,2], ARRAY[3,4] ] AS items
```

Esta consulta devuelve:


****  

| \# | items | 
| --- | --- | 
| 1 | `[[4, 5], [1, 2], [3, 4]]` | 

Para combinar varias matrices en una sola, utilice el operador de canalización doble o la función `concat()`.

```
WITH
dataset AS (
  SELECT
    ARRAY ['Hello', 'Amazon', 'Athena'] AS words,
    ARRAY ['Hi', 'Alexa'] AS alexa
)
SELECT concat(words, alexa) AS welcome_msg
FROM dataset
```

Esta consulta devuelve:


****  

| \# | welcome\_msg | 
| --- | --- | 
| 1 | `[Hello, Amazon, Athena, Hi, Alexa]` | 

Para obtener más información sobre otras funciones de cadena `concat()`, consulte [Funciones y operadores de cadena](https://trino.io/docs/current/functions/string.html) en la documentación de Trino.