2017-08-30 58 views
1

mysql,有一列使用了json數據類型。我想執行查詢與列作爲條件。用Sql,我可以把它寫成波紋管。如何查詢mysql的json數據類型爲spring-data-jpa的條件

select * from user where json_extract(address,'$.city')= 'beijing' 

但使用spring-data-jpa,我不知道如何實現它。 JPQL沒有提供一些API實現json_extractjpaJpaSpecificationExecutor也沒有提供相同的功能。如果有人知道如何去做,請回答這個問題。

+0

嘗試使用'nativeQuery' ... – Cepr0

回答

0

試試這個:

@Query(value = "select * from user where json_extract(address,'$.city') = '?city'", nativeQuery = true) 
List<User> findUsersByCity(String city); 

我沒有檢查它。

好運

+0

通過這種方式,真正與json_extract查詢,但我失去的方式,以產品動態SQL。所以我使用naticQuery,雖然它有點乏味,但它確實有效。 –