Cast y Convert
Convierte una expresión de un tipo de datos en otro.
Sintaxis
Syntax for CAST:
CAST ( expression AS data_type [ ( length ) ] )
Syntax for CONVERT:
CONVERT ( data_type [ ( length ) ] , expression [ , style ] )
Argumentos
Expression | Es cualquier expresión válida. | |
Data_type | Es el tipo de datos de destino. Incluye xml, bigint y sql_variant. No se pueden utilizar tipos de datos de alias. | |
Length | Es un número entero opcional que especifica la longitud del tipo de datos de destino. El valor predeterminado es 30. | |
Style |
Es una expresión de tipo entero que especifica cómo la función CONVERT traducirá expression. Si style es NULL, se devuelve NULL. data_type determina el intervalo. Para obtener más información, vea la sección Comentarios. |
Try_Convert
Devuelve un valor convertido al tipo de datos que se especifico si la conversión tiene éxito; De lo contrario, devuelve NULL, a diferencia de Convert que devuelve un error. Sin embargo, si solicita una conversión que no está explícitamente permitida, TRY_CONVERT fallará y devolverá un error.
TRY_CONVERT funciona a partir de SQL Server 2012 o el nivel de compatibilidad 110 o superior. Ejemplo:
SET DATEFORMAT dmy;
SELECT TRY_CONVERT(datetime2, '12/31/2010') AS Result;
GO
Parse
PARSE es una de la nueva función de conversión incorporada en Sql Server 2012. La función de PARSE convierte la expresión de la cadena al tipo de datos solicitado. Si no es posible realizar la conversión SQL Server retornará una excepción.
Esta función PARSE no es una función Sql nativa, sino que es una función dependiente de Common Language Run-time .NET Framework . Por lo qué obviamente, tendrá la sobrecarga de rendimiento y también requiere la presencia de .NET CLR en el servidor de base de datos. Continúe usando las funciones CAST y CONVERT existentes donde sea posible.
Sintaxis:
PARSE (string_value AS data_type [USING cultura])
Detalles de los parámetro:
String_value: | String expresión que necesita ser analizada. |
Tipo_de_datos: | Tipo de datos de salida, p. INT, NUMERIC, DATETIME, etc. |
Culture: | Cadena opcional que identifica la cultura en la que string_value está formateado. Si no se especifica, toma el idioma de la sesión actual. |
Try_Parse
Try_PARSE al igual que la función PARSE son incorporadas en Sql Server 2012. La función de Try_PARSE convierte la expresión de la cadena al tipo de datos solicitado. Si no es posible realizar la conversión SQL Server retornará NULL
Esta función Try_PARSE no es una función Sql nativa, sino que es una función dependiente de Common Language Run-time .NET Framework . Por lo qué obviamente, tendrá la sobrecarga de rendimiento y también requiere la presencia de .NET CLR en el servidor de base de datos. Continúe usando las funciones CAST y CONVERT existentes donde sea posible.
Sintaxis:
TRY_PARSE (string_value AS data_type [USING cultura])
Detalles de los parámetro:
String_value: | String expresión que necesita ser analizada. |
Tipo_de_datos: | Tipo de datos de salida, p. INT, NUMERIC, DATETIME, etc. |
Culture: | Cadena opcional que identifica la cultura en la que string_value está formateado. Si no se especifica, toma el idioma de la sesión actual. |