2016-06-02 4 views
2

Ist es möglich, mehrere Spalten in IN Klausel zu haben?Mehrere Spalten IN-Klausel Federdaten jpa

@Query(nativeQuery = true, value = "select * from table where (column1, column2) in (:column1, :column2)") 
List<Table> findByColumn1Column2In(@Param("column1") List<BigDecimal> column1, @Param("column2") List<BigDecimal> column2);` 

Erwartet eine Abfrage wie folgt:

select * from table where (column1, column2) in ((1,2), (3,4), (5,6)) 

Antwort

-1

Nein, es funktioniert genauso wie SQL IN, und was würden Sie erwarten, dass das Ergebnis in diesem Fall sein?

Edited Antwort: Vielleicht Sie suchen etwas wie folgt aus:

select * from table where column1 in :column1 and column2 in :column2 

: column1 und: column2 sind beide Listen, so dass Sie keine Kopplung zwischen ihnen durchzusetzen. Wenn Sie Paar wirklich vergleichen möchten, müssen Sie die Logik Ihrer Anwendung ändern.

+0

Vielen Dank für die Antwort. Ich möchte die Federdaten jpa verwenden. Bitte überprüfen Sie die Bearbeitung. – HashimR

Verwandte Themen