如何使用Hibernate标准创建此类查询?
SELECT * FROM books WHERE CAST(price AS TEXT) LIKE '123%'
我有这样的表结构:
username(id), first_name( character varying ), safety_id(bigint)
我希望选择所有带有safety_id的记录,例如' 3304%'
我该怎么做?
正如Hiru正确提到的,我正在寻找bigdecimal文本转换。我还检查了Balkrishna Rawool提供的链接,并指出了我的方法。
解决方案
我创建了NamedQuery
@NamedNativeQuery(name = "getCustomerArrayForParameters", query = "SELECT * FROM view_customersflat WHERE CAST (safety_id as TEXT) LIKE :safety_id ",resultClass=Customer.class )
并像往常一样创建标准:
getCurrentSession().getNamedQuery("getCustomerArrayForParameters").setString("safety_id", safetyId ).list();
一切顺利。
谢谢你的关注。