Conversión de valor o una expresión de un tipo de datos a otro en el servidor SQL

SQL Server usa la función CAST() para convertir o convertir un valor o una expresión de un tipo de datos a otro.

Sintaxis:

CAST ( value AS targettype [ ( length ) ] )

Parámetros utilizados:

  • valor:
    el valor puede ser cualquier valor de cualquier tipo que se convertirá.
  • targettype:
    targettype es el tipo de datos de destino al que se convertirá el valor. por ejemplo, INT, BIT, SQL_VARIANT, etc.
  • longitud:
    la longitud es un parámetro opcional que especifica la longitud del tipo de destino, la longitud predeterminada es 30.

Para una mejor comprensión, ejecutemos la siguiente consulta de la siguiente manera.

SELECT 3 + '3' AS Result;

Producción :

Resultado
6

Su resultado es 6 como número. En la declaración anterior, SQL Server convierte implícitamente la string de caracteres ‘3’ en el número 3.

Nota:
cuando se utilizan dos valores con diferentes tipos de datos en SQL Server, convertirá el tipo de datos inferior al superior antes de que se procese más. Esto se conoce como conversión implícita.

Por otro lado, el servidor SQL podría usar conversiones explícitas donde la función CAST() se usa explícitamente para convertir un valor de un tipo a otro de la siguiente manera.

SELECT 3 + CAST('3' AS INT) AS Result;

Producción :

Resultado
6

Para convertir un valor de los tipos de datos en diferentes escenarios, SQL Server devolverá un valor truncado o un valor redondeado según las siguientes reglas de la siguiente manera.

Del tipo de datos   Al tipo de datos Comportamiento
numérico numérico Redondo
numérico En t Truncar
flotar En t Redondo
flotar numérico Redondo
flotar fecha y hora Redondo
fecha y hora En t Redondo

Ejemplos –

  • Ejemplo-1:
    el siguiente ejemplo utiliza la función CAST() para convertir el valor de tipo decimal en un valor de tipo entero.
    SELECT CAST(5.95 AS INT) AS Result;

    Producción :

    Resultado
    5
  • Ejemplo-2: El siguiente
    ejemplo usa la función CAST() para convertir el valor de tipo decimal a otro número de valor de tipo decimal con la escala cero.
    SELECT CAST(5.95 AS DEC(3, 0)) Result;

    Producción :

    Resultado
    6
  • Ejemplo-3:
    uso de la función CAST() para convertir una string en un ejemplo de valor de fecha y hora.
    El siguiente ejemplo usa la función CAST() para convertir la string en una fecha y hora.
    SELECT CAST('2020-09-14' AS DATETIME) 
    AS Result;

    Producción :

    Resultado
    2020-09-14 00:00:00.000

Publicación traducida automáticamente

Artículo escrito por khushboogoyal499 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 *