CAST (Entity SQL)

轉換運算式的資料型別。

CAST ( expression AS data_type )

引數

  • expression
    可以轉換為 data_type 的任何有效運算式。
  • data_type
    目標系統提供的資料型別。它必須是基本 (純量) 型別。使用的 data_type 視查詢空間而定。如果查詢是以 EntityCommand 執行的,資料型別將會是 EDM 型別。如果查詢是以 ObjectQuery 執行的,則資料型別為 Common Language Runtime (CLR) 型別。

傳回值

傳回 data_type 的相同值。

備註

轉型運算式的語意很類似 Transact-SQL CONVERT 運算式。轉型運算式是用來將某個型別的值轉換成另一個型別的值。

CAST( e as T )

如果 e 為 S 型別,且 S 可轉換成 T,則上述運算式便是有效的轉型運算式。T 必須是基本 (純量) 型別。

轉型為 Edm.Decimal 時可選擇性提供有效位數和小數位數 Facet 的值。如果沒有明確提供,則有效位數和小數位數的預設值將分別為 18 和 0。更明確地講,下列多載支援 Decimal

  • CAST( d as Edm.Decimal );

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

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

使用轉型運算式會視為明確轉換。而明確轉換可能會截斷資料或遺失有效位數。

Bb399172.note(zh-tw,VS.100).gif注意:
只有在基本型別和列舉成員型別上能支援 CAST。

範例

下列 Entity SQL 查詢使用 CAST 運算子將某個資料型別的運算式轉型為另一個資料型別。此查詢是以 AdventureWorks Sales Model 為依據。若要編譯及執行此查詢,請遵循以下步驟:

  1. 按照 HOW TO:執行可傳回 PrimitiveType 結果的查詢 (EntityClient) 中的程序進行。

  2. 將下列查詢當成引數傳遞至 ExecutePrimitiveTypeQuery 方法:

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

另請參閱

概念

Entity SQL 參考

其他資源

Type Operators