我想从与集合表映射的字段中删除特定的用户 ID。单个 QueryDSL JPA 更新语句怎么可能做到这一点?
需要的是这样的:
new JPAUpdateClause(getEntityManager(), sharing).where(sharing.key.eq(sharingKey))
.set(sharing.userIds, ***sharing.userIds - userId***).execute();
映射类:
public class Sharing {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
@Column(name = "naturalid", unique = true)
private String key;
private int creatorUserId;
@ElementCollection
@CollectionTable(name = "pla_sharing2users", joinColumns = @JoinColumn(name = "sid"))
@Column(name = "uid")
private Set<Integer> userIds;
...
}