Spring Data JPA @Query Annotationを使用して180日以上古いすべてのユーザをUserから取得したいとします。ここにクエリがあります。Spring Data JPA @Queryアノテーションを使用してリポジトリから180日前のユーザを照会する方法@Queryアノテーション
@Query("select user from User user where datediff(?1,user.createdTime)>=180")
List<User> findByCreatedDateMoreThanSixMonths(Date currentDate);
以下は、呼び出しコードです。
List<User> userList = userRepository.findByCreatedDateMoreThanSixMonths(new Date());
これは方法ですか、何か不足していますか? bczを実行しても期待された結果が得られません。
ここで日付比較をしてはいけませんか? 'user.createdTime'も' Date'オブジェクトであれば、整数 '180'を照会することはできません。 – px06
dateDiff()は日付を比較し、整数を日数で返します。ではない? –