Domanda

Sto provando a fare una query in HQL per vedere se l'id di una persona è in un elenco di ID predefiniti.

Ad esempio, vorrei trovare tutte le persone che hanno ID 1 o 2 in un database.

Il problema è che non posso fare: da Person person dove id in elements (: ids) perché elements prevede un identificatore (come person.childIds per esempio) e non un parametro con nome.

C'è un modo per farlo senza ricorrere all'analisi di List e creare manualmente la stringa?

Grazie.

È stato utile?

Soluzione

Tutto quello che devi fare è impostare una raccolta nella query.

query.setParameterList("userIds", new Integer[] {1,2});

Quindi nella tua query

FROM User WHERE id IN (:userIds)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top