Kann ich die Anweisung IN (...) von SQL für eine namedQuery verwenden?

7

Wie kann ich IN bei meiner namedQuery verwenden?

%Vor%

Ich meine, dass ich 'type' Parameter setzen kann (ich habe es als eine Variable definiert ---- & gt;: type) und ich möchte Variablen innerhalb der IN-Anweisung definieren. Die Anzahl der Parameter ist jedoch nicht konstant. Ich möchte ein Array oder etwas in der Art definieren: array [] und ich möchte es festlegen, wenn ich diese namedQuery aufrufen.

    
kamaci 20.12.2010, 12:38
quelle

3 Antworten

21
%Vor%

und dann im Code für den Ruhezustand:

%Vor%

BEARBEITEN
In JPA schreiben Sie

%Vor%

und nach sollte dies funktionieren.

    
Tadeusz Kopec 20.12.2010, 12:59
quelle
1

Der Ausdruck "IN" in JPQL ist gleichbedeutend mit dem Schreiben mehrerer "ODER" -Anweisungen, in Ihrem Fall wäre ein Beispiel für "IN":

%Vor%

Was meiner Meinung nach gleich ist:

%Vor%

Hier ist ein Link, der es gut erklärt: OpenJPA: IN Ausdruck

BEARBEITEN P.S. Angenommen p.available ist String (Zeichentyp)

EDIT2 Der Autor hat die Frage so oft bearbeitet, dass ich ihn nicht weiter verfolgen kann. Was die eigentliche Frage nach dem Übergeben des Arrays für IN-Ausdruck anbelangt, hier eine ähnliche Frage zu StackOverflow: JPQL IN-Klausel - Arrays

    
Arturs Licis 20.12.2010 12:49
quelle
0

Hast du etwas wie

versucht? %Vor%

(wenn "verfügbar" eine Zeichenfolge ist)

oder

%Vor%

(falls verfügbar ist eine Nummer)?

    
AlexR 20.12.2010 12:49
quelle

Tags und Links