我不能得到sum()来返回小数,它总是返回int64截断小数。我用谷歌搜索了一整天,但仍然找不到真正的工作。我有一个名为ProductPurchase的数据库表
QtyPurchased(int)的 和 UnitPurchasePrice(money)栏目,
使用NHibernate将它们映射到C#POCO对象, 哪里 QtyPurchase是一个int,UnitPurchasePrice是一个十进制属性。
我有以下HQL查询,我想获得某一天的总购买金额:
选择总和(detail.QtyPurchased * detail.UnitPurchasePrice) 来自Domain.Entities.ProductPurchase AS详细信息 其中datediff(“day”,detail.PurchaseDate,:trading_date)= 0
现在出于任何原因,query.UniqueResult总是返回一个Int64整数,截断小数,而生成的SQL显然会返回带小数的正确数字。有人能否解释如何让这个返回小数?
我注意到如果我使用SQL(即CreateSqlQuery),我可以得到小数。这是Nhibernate的错误吗?
谢谢堆
Steven Kuo