La función concat en el desplazamiento rojo de AWS se usa para concatenar (unirse) dos o más cadenas y devolver la cadena resultante. El tipo de datos de la variable resultante es el mismo que el de las variables de entrada a la función concat. La función de concat no puede ser aplicable en una sola cadena. Puede ser aplicable en dos y más de dos cuerdas. En caso de que queramos aplicar la función de concat en más de dos cadenas, se utiliza la función de concatación anidada. La función concat es equivalente al operador de concatenación (||) utilizado entre dos cadenas o expresiones.
Sintaxis de la función concat
La sintaxis para la función concat se da en lo siguiente:
1 | Concat (cadena 1, cadena 2) |
Donde ambos argumentos "String 1" y "String 2" puede ser de longitud fija o de cadenas de longitud variable.
Si las cadenas de entrada son de diferentes tipos de datos, Amazon RedShift intenta escribir incondicionalmente una de las cuerdas. Si los valores no se pueden lanzar, se devuelve un error del desplazamiento rojo de Amazon.
Ejemplos al usar la función concat
Tomemos algunos ejemplos para comprender completamente el funcionamiento de la función concat. Esta sección contiene múltiples ejemplos para tener una mejor comprensión de la función concat.
Concatenación de cadena simple
En este ejemplo, concatenaremos las dos cuerdas - "AWS" y "Redshift". Use la siguiente consulta de desplazamiento al rojo para concatenar estas cuerdas:
1 | seleccione Concat ('AWS', 'Redshift'); |
La salida de esta consulta es la siguiente:
1 2 3 | AWS Redshift |
El mismo resultado también se puede generar utilizando el operador de concatenación (||). Use la siguiente consulta para concatenar las cadenas utilizando el operador de concatenación en el clúster de desplazamiento rojo:
1 | Seleccione 'AWS' || ' Desplazamiento al rojo '; |
La salida de esta consulta es la siguiente:
1 2 3 | AWS Redshift |
Ahora, intentemos concatenar las cuerdas, "21 de mayo" y "2022". La siguiente consulta de desplazamiento al rojo concatena estas cadenas utilizando la función Concat:
1 | seleccione Concat ('21st mayo', ', 2022'); |
Genera la siguiente salida. Recuerde que el tipo de datos de esta consulta es la cadena ya que ambos parámetros de entrada son cadenas:
1 2 3 | 21 de mayo de 2022 |
Pruebe el mismo ejemplo, pero esta vez utilizando un operador de concatenación (||). La siguiente es la consulta para concatenar estas cuerdas:
1 | Seleccione '21st mayo' || ' , 2022 '; |
Esta consulta da como resultado la siguiente salida:
1 2 3 | 21 de mayo de 2022 |
Concatenación anidada
Si desea concatenar más de dos cuerdas, se usa la función de concatación anidada. De la misma manera, el operador de concatenación (||) también se puede usar para concatenar dos o más de dos cadenas en el clúster de desplazamiento rojo. En esta sección, utilizaremos tanto el operador de concatenación (||) como la función concat para implementar la concatenación anidada.
En el siguiente ejemplo, intentaremos concatenar más de dos cuerdas para comprender mejor la función de concatación. La primera cadena es un día, yo.mi. "Sábado". La segunda cadena es una fecha y un mes, yo.mi. "21 de mayo". Y la tercera cadena es un año, yo.mi. "2022".
La siguiente consulta se utiliza para implementar la concatenación anidada en estas cadenas:
1 | seleccione Concat ('Sábado', Concat ('21 de mayo', '2022')); |
Esta consulta genera la siguiente salida:
1 2 3 | Sábado 21 de mayo de 2022 |
Para concatenar múltiples cadenas, usamos el operador de concatenación (||) en lugar de la función concat en el clúster de desplazamiento rojo. El operador de concatenación (||) toma las cuerdas de ambos lados y las concatena para generar la salida.
La siguiente consulta concatena múltiples cadenas utilizando el operador de concatenación (||):
1 | Seleccione 'Sábado', || '21 de mayo', || '2022'; |
La salida de esta consulta es la siguiente:
1 2 3 | Sábado 21 de mayo de 2022 |
Manejo de valores nulos en el desplazamiento al rojo
En caso de que pasamos uno o más valores nulos a la función concat, el resultado estará vacío. Para verificar el valor vacío, ejecutaremos una consulta de ejemplo en el clúster de desplazamiento rojo.
En la siguiente consulta, un parámetro de la función concat es nulo:
1 | seleccione Concat ('AWS RedShift', NULL); |
Cuando se ejecuta, esta consulta generará una salida vacía.
Ahora, intentaremos el mismo ejemplo usando un operador de concatenación (||) en lugar de la función Concat:
1 | Seleccione 'AWS RedShift' || NULL; |
La salida de esta consulta también estará vacía.
Para resolver el valor nulo en los datos, NVL se usa el comando. NVL El comando es responsable de manejar los valores nulos en los datos.
Ahora, tomamos un ejemplo en el que usamos el NVL para manejar el NULO parámetro. Para eso, usamos la función de manejo nulo, yo.mi. NVL, Para manejar los valores nulos.
La siguiente consulta se puede usar para concatenar la cadena y la NULO parámetro manejado por el NVL función:
1 | seleccione Concat ('AWS RedShift', NVL (NULL, ")); |
Genera la siguiente salida, tomando el NULO Parámetro como cadena vacía:
1 2 3 | AWS Redshift |
Pruebe el mismo ejemplo, pero esta vez utilizando un operador de concatenación:
1 | Seleccione 'AWS RedShift' || Nvl (nulo, "); |
La siguiente es la salida de esta consulta:
1 2 3 | AWS Redshift |
Aplicar la función de concat en la tabla de desplazamiento rojo
En esta sección, aplicaremos la función concat en la tabla. Usaremos una base de datos establecida por AWS para aplicar la función Concat en ella.
Aplicaremos la función concat en el evento Tabla proporcionada por el Amazon Redshift. Concatenaremos ambos columnas de Venuename y Venuecity donde los sedes son mayores que 75000.
La siguiente consulta concatena los datos de Venuename y Venuecity Donde los lugares de los lugares son superiores a 75000:
1 2 3 4 5 | Seleccione Concat (VenueName, Venuecity) |
La salida de esta consulta es la siguiente:
1 2 3 4 5 6 7 8 9 | FedExfieldLandover |
Ahora, intente este ejemplo usando un operador de concatenación. Pero, concatenamos el Venuecidad y VeueSestate columnas esta vez. Además, cambiamos la condición de lugareseños a 73500:
1 2 3 4 5 6 7 | Seleccionar Venuecity || VenueSestate |
Genera el siguiente resultado:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Jacksonvillefl |
Ahora, aplicamos el concepto de anidados Concatismo función en el evento mesa. La consulta concatena el Venuename y Venuecity valores de la tabla. Además, agregue las comas y los espacios a la cadena resultante:
1 2 3 4 5 6 7 | Seleccione Concat (Concat (Venuename, ','), Venuecity) |
La salida de esta consulta es la siguiente:
1 2 3 4 5 6 7 8 9 10 11 | Dolphin Stadium, Miami Gardens |
En este siguiente ejemplo, concatenaremos la columna que contiene la nula para comprender completamente el concepto de manejo del Nulo usando el NVL función:
1 2 3 4 5 6 7 | Seleccione Concat (VenueName, Concat ('asientos', NVL (SenueSeats, 0)) |
Esta consulta genera el siguiente resultado cuando se ejecuta:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Asientos del hotel Ballys 0 |
Conclusión
En este artículo, discutimos cómo usar la función concat con la ayuda de múltiples ejemplos. Aplicamos el concepto de la función concat, la función de concatación anidada y el operador de concatenación. Estudiamos cómo manejar los valores nulos en la función concat utilizando la función NVL. La función de concat de desplazamiento rojo de AWS proporciona el privilegio completo para concatenar las dos o más cadenas en su base de datos.