您如何使用休眠条件编写条件条件。
我需要转换的查询是
SELECT date, product, IF(type = 'msrp', amount, 0) price,
IF(type != 'msrp', amount, 0) tax FROM productdetail group by date, product;
请在休眠条件中提供if 语句的正确用法。
您如何使用休眠条件编写条件条件。
我需要转换的查询是
SELECT date, product, IF(type = 'msrp', amount, 0) price,
IF(type != 'msrp', amount, 0) tax FROM productdetail group by date, product;
请在休眠条件中提供if 语句的正确用法。
正如@JBnizet 所说,标准API 不支持这一点。除非你正在使用NHibernate
如果您使用 NHIbernate
Projections.Conditional(
Restrictions.EqProperty(..............
但这是我使用 Hibernate 的可能解决方案。
1)在这种情况下,您可以通过使用NativeSqlQuery来使用相同的查询
2)或者通过使用HQL。在 HQL 中有一个名为.This 的表达式case when
。这可能会有所帮助在 HQL 选择中使用 CASE 语句
联合查询的标准解决方法是视图表,否则它是 java 中的 2 个条件和逻辑来操作结果。