2016-11-07 87 views
2

下面是我的倉庫方法彈簧數據@Query與收集PARAMS

List<Shipment> findByProductCategoriesBetweenQuarter(Set<Category> categories, Quarter from, Quarter to) 

那些類別的實體,季度是@Embeddable如下

class Quarter { 
int year; 
Quarters q; //Enum 
} 

我想創建一個自定義庫帶有@Query的impl帶有以下代表查詢

@Query("select s from Shipment s where Category in (categories) and Quarter between (from, to)") 

看起來像@Query作品與原語相當好,無法找到一個可以幫助我實現上述情況的例子。

所以這裏的幾個問題 1.是否有可能 2.如果可能,請求一些參考。

PS:現在不能做QueryDSL。

+0

Category是什麼樣的。數據庫中有哪些列? –

回答

1

JPA將在數據庫表中存儲Enum序號爲int

所以你可以做到以下幾點。

@Query("select s from Shipment s where Category in (categories) and Quarter between (from.ordinal(), to.ordinal())")