通过 Quarkus 中的 Panache 在列表中删除

delete in list via Panache in Quarkus

这是我想做的

delete from table where id in list_of_ids

我知道 Hibernate HQL 可以做到这一点

Long[] ids = {1L, 2L, 3L};
Query query = session.createQuery("delete from SysMenu where id in (:id)");
query.setParameterList("id", ids);
int i = query.executeUpdate();

但是想使用Panache-ORM怎么办呢?

你总是可以使用 simplified query 之类的

SysMenu.delete("delete from SysMenu where id in ?", ids);

应该可以(手写,未测试)。

Here可以看到方法定义

适用于Panache

Long[] ids = {1414151951951728640L, 1414152114971742208L};
List<Long> list = Arrays.asList(ids);
long rows = SysMenu.delete("id in (?1)", list);