JPA-Abfrage zum Auswählen der mehreren Werte in der IN-Klausel

Ich möchte eine JPA-parametrisierte Abfrage für die folgende SQL-Anweisung erstellen

select * from car where (colour, speed) in (('red', 50), ('blue', 70))

Diese Abfrage gibt das erwartete Ergebnis zurück

entityManager.createQuery("from Car c where (c.colour, c.speed) in (('red', 50), ('blue', 70))", Car.class).getResultList();

Wie können die aktuell fest codierten Werte als Parameter übergeben werden?

Ich habe unten eine "funktionierende" Lösung gefunden. Aber ich fürchte, es gibt keine Garantie dafür, dass alle Parameterpaare in der erwarteten Reihenfolge übergeben werden? Ich möchte keine "blauen" Autos mit der Geschwindigkeit "50" bekommen.
bearbeiten: entfernt, da es nicht wie erwartet funktioniert, siehe auch @Gas-Kommentar

Antworten auf die Frage(0)

Ihre Antwort auf die Frage