Hibernate如何在2位小数点写Detachedcriteria?

时间:2013-01-26 07:59:07

标签: java hibernate detachedcriteria

这里我有2个值示例价格和discountPrice。 当我使用mysql

select price, discountPrice from stockItem where price = discountPrice;

我找不到记录。

我改为

之后
select price, discountPrice from stockItem where FORMAT(price,2) = FORMAT(discountPrice,2);

我能够查询记录。

我可以在hibernate中知道如何在2位小数点写下Detachedcriteria吗?

这是当前代码:

DetachedCriteria criteria = DetachedCriteria.forClass(StockItem.class);
criteria.add(Restrictions.eqProperty("price", "discountPrice"));
return getHibernateTemplate().findByCriteria(criteria);

有没有办法写?

在mysql中 我们看到它是10.70。我只怀疑实际数字是10.700000000000001。有没有办法识别这个?

感谢

1 个答案:

答案 0 :(得分:0)

尝试:

criteria.add(Restrictions.sqlRestriction("FORMAT(price,2) = FORMAT(discountPrice,2)"));

通过使用sqlRestriction(),您可以将文字SQL片段直接插入查询