使用CriteriaBuilder,我想构建一个LIKE-Predicate,它对应于以下SQL:
SELECT e.* FROM entity e WHERE 'aStringValue' LIKE e.aProperty || '%'
(Oracle SQL - ||
- 运算符进行连接)
换句话说,我必须搜索包含字段e
的表aProperty
,其中存储了不同varchar值的短格式,用于特定值aStringValue
。
如何使用CriteriaBuilder实现这一目标?
答案 0 :(得分:1)
未经测试,但这应该符合您的要求:
cb.like(cb.literal("aStringValue"),
cb.concat(myEntity.get(MyEntity_.aProperty), "%"));