Función CAST en Cassandra

La función CAST ayuda a convertir datos de un tipo de datos a otro tipo de datos en Cassandra .

En la función Cassandra CAST Admitido en sentencias SELECT. echemos un vistazo a cómo podemos usar la función CAST en la declaración de selección.

SELECT CAST([fieldname] AS [data type]) 
FROM [table name] 

Función básica de CAST:

  • Convierte desde cualquier tipo de datos nativos a tipo de datos de texto en formatos como ASCII y UTF-8.
  • Convierte entre tipos de datos numéricos tales como `int` a `smallint`, `smallint` a `int`, etc.
  • Al usar la función CAST, podemos convertir el caso de uso más común.
  • Es muy útil en caso de optimización donde tenemos la necesidad de cambiar frecuentemente de un tipo de datos a otro.
  • Al usar la función CAST, podemos convertir la marca de tiempo en texto para fines de visualización en Cassandra.

Esta es una tabla de referencia en la que se pueden convertir todos los tipos de datos nativos de un tipo de datos a otro.

Echemos un vistazo,

Tabla: tabla de conversión CAST
La siguiente tabla describe las conversiones admitidas por la función de conversión. Cassandra ignorará silenciosamente cualquier conversión que convierta un tipo de datos en su propio tipo de datos.

De A
ascii texto, varchar
Empezando tinyint, smallint, int, float, doble, decimal, varint, texto, varchar
booleano texto, varchar
encimera tinyint, smallint, int, bigint, float, doble, decimal, varint, texto, varchar
fecha marca de tiempo
decimal tinyint, smallint, int, bigint, float, doble, varint, texto, varchar
doble tinyint, smallint, int, bigint, float, decimal, varint, texto, varchar
flotar tinyint, smallint, int, bigint, doble, decimal, varint, texto, varchar
inet texto, varchar
En t tinyint, smallint, bigint, float, doble, decimal, varint, texto, varchar
pequeño tinyint, int, bigint, float, doble, decimal, varint, texto, varchar
tiempo texto, varchar
marca de tiempo fecha, texto, varchar
tiempouuid marca de tiempo, fecha, texto, varchar
diminuto tinyint, smallint, int, bigint, float, doble, decimal, varint, texto, varchar
uuid texto, varchar
variante tinyint, smallint, int, bigint, float, doble, decimal, texto, varchar

Fuente: Cassandra.Apache.org

Consulta CQL para la función CAST:
Tomemos un ejemplo: películas es un nombre de tabla en el que queremos cambiar su tipo de datos nativos, de modo que movie_date es un nombre de campo que tiene un tipo de datos de marca de tiempo y si queremos convertirlo en otro tipo de datos nativos como que en el tipo de datos de texto.

Para crear la tabla usó la siguiente consulta CQL.

CREATE TABLE movies
 (
  movie_id int,
  movie_date timestamp,
  PRIMARY KEY (movie_id)
 ); 

Inserte los siguientes datos en la tabla:

movie_id : 7c3cffb8-0dc4-1d27-af24-c007b5fc5643
movie_date : 2019-10-15 01:11:50.000000+0000  

INSERT INTO movies (movie_id, movie_date) 
       VALUES (7c3cffb8-0dc4-1d27-af24-c007b5fc5643, 
                 '2019-10-15 01:11:50.000000+0000 '); 

Entonces, aquí está el formato de cómo podemos convertir de un tipo de datos a otro usando la función CAST. La declaración dada a continuación significa que vamos a convertir la marca de tiempo movie_date en texto movie_date.

SELECT CAST(movie_date AS text) 
  • Resultado: Sin CAST
    SELECT movie_date
    FROM movies
    WHERE movie_id = 7c3cffb8-0dc4-1d27-af24-c007b5fc5643; 

    Producción:

    2019-10-15 01:11:50.000000+0000 (time stamp format) 
  • Resultado: Con CAST
    SELECT CAST(movie_date AS text)
    FROM movies
    WHERE movie_id = 7c3cffb8-0dc4-1d27-af24-c007b5fc5643; 

    Producción:

    2019-10-15 01:11:50.000Z (Coordinated Universal Time, or UTC) 

Publicación traducida automáticamente

Artículo escrito por Ashish_rana y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *