Compartir a través de


CAST (Entity SQL)

Convierte una expresión de un tipo de datos a otro.

CAST ( expression AS data_type )

Argumentos

  • expression
    Cualquier expresión válida que se pueda convertir a data_type.
  • data_type
    Tipo de datos de destino proporcionado por el sistema. Debe ser un tipo (escalar) primitivo. El valor de data_type utilizado depende del espacio de la consulta. Si una consulta se ejecuta con EntityCommand, el tipo de datos es un tipo de EDM. Si una consulta se ejecuta con ObjectQuery, el tipo de datos es un tipo de Common Language Runtime (CLR).

Valor devuelto

Devuelve el mismo valor que data_type.

Comentarios

La expresión de conversión tiene una semántica similar a la expresión CONVERT de Transact-SQL. La expresión de conversión se utiliza para convertir un valor de un tipo en un valor de otro tipo.

CAST( e as T )

Si e es de un tipo S, y S se puede convertir a T, la expresión anterior es una expresión de conversión válida. T debe ser un tipo (escalar) primitivo.

Se pueden proporcionar opcionalmente valores para las facetas de precisión y escala al convertir a Edm.Decimal. Si no se proporcionan explícitamente, los valores predeterminados para la precisión y la escala son 18 y 0, respectivamente. Concretamente, las sobrecargas siguientes son compatibles con Decimal:

  • CAST( d as Edm.Decimal );

  • CAST( d as Edm.Decimal(precision) );

  • CAST( d as Edm.Decimal(precision, scale) );

El uso de una expresión de conversión se considera una conversión explícita. Las conversiones explícitas pueden truncar datos o perder precisión.

Nota

CAST sólo se admite en tipos primitivos y tipos de miembro de enumeración.

Ejemplo

La consulta de Entity SQL siguiente usa el operador CAST para convertir una expresión de un tipo de datos a otro. La consulta se basa en el modelo AdventureWorks Sales. Para compilar y ejecutar esta consulta, siga estos pasos:

  1. Siga el procedimiento de Cómo ejecutar una consulta que devuelve resultados PrimitiveType (EntityClient).

  2. Pase la consulta siguiente como argumento al método ExecutePrimitiveTypeQuery:

SELECT VALUE cast(p.ListPrice as Edm.Int32) 
    FROM AdventureWorksEntities.Product as p order by p.ListPrice

Vea también

Conceptos

Operadores de tipo (Entity SQL)
Referencia de Entity SQL