[英]How To Convert The DataTable Column type?
我正在嘗試實施:
dtGroupedBy.Compute("sum(POWER)",dvv.RowFilter);
它導致錯誤:
聚合 function Sum() 和類型:字符串的使用無效。
我們如何將它轉換為它的列類型?
這將取決於您如何創建DataTable
。 如果它只是直接來自 SQL,您應該考慮更改 SQL 本身,以便在您獲取它時轉換 POWER 列。
但是,如果值首先應該始終是數字,我強烈建議您重新訪問您的數據庫模式 - 如果可能的話,更改列類型會更干凈。
您不能在字符串字段上使用Sum()
聚合 function。
你可以做兩件事
System.Int32
轉換。 所以你可以做以下dtGroupedBy.Compute("sum(CONVERT(" + POWER + ",'System.Int32'))",dvv.RowFilter);
Compute 方法支持表達式,並且它們支持您可以在表達式內部使用的CONVERT function
。
例如,您可以計算列的總和,例如
MyDataTable.Compute("Sum(Convert(your column name, 'Data Type'))")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.