SpringBoot中JPA自定义jpql

2018.5.3 SpringBoot

service层

@PersistenceContext
private EntityManager entityManager;

String sql = "s.fpath like '" + String.join("%' OR s.fpath like '", paths.split(",")) + "%'";
String idsInWhere = "'" + String.join("','", stateFrom.split(",")) + "'";
sql = "update Secondment s set s.fstate=:stateTo where s.fid in(" + idsInWhere + ") or (" + sql
		+ ") AND s.fstate=:stateFrom";
int updatedCount = entityManager.createQuery(sql).setParameter("stateFrom", stateFrom).setParameter("stateTo", stateTo)
						.executeUpdate();

更新列表:

*

参考文章:

相关阅读