1 回答

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊
使用自定義本機(jī)查詢:
@Query(value = "SELECT id, label
FROM TABLE10
WHERE label like %?1%", native = true)
List<User> findByLabel(String a);
https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#_using_advanced_like_expressions
如果您需要可變數(shù)量的參數(shù),則必須編寫自己的查詢:
@PersistenceContext
EntityManager entityManager;
@Override
public List<YourClass> findByLabelLike(List<String> labels) {
String q = "SELECT id, label FROM TABLE10";
for (String l : labels) {
// Add where and ORs
}
Query query = entityManager.createNativeQuery(q, YourClass.class);
int i = 0;
for (String label : labels) {
query.setParameter(++i, "%"+label+"%");
}
return query.getResultList();
}
添加回答
舉報(bào)