如何在HQL(NHibernate)中总结一个布尔列?

Mat*_*ers 1 nhibernate hql

我在后端SQLite中有一个以整数表示的列,但在Nhibernate映射中有一个布尔解释.我希望我的HQL查询得到'真'行的计数.在SQL中,它可以正常工作为"SUM(BoolColumn)",但是HQL将返回的值转换为bool.我不能使用where子句,因为我在select中有一些其他COUNT(DISTINCT)列,包括true和false行.

dot*_*joe 7

既然NH认为它有点(不能聚合)你可以在HQL中做这样的事情......

sum(case when BoolColumn = 1 then 1 else 0 end)

您是否定义了从int到bool的自定义映射,或者您假设int只是1或0?