diff --git a/src/main/java/com/everytime/domain/post/repository/PostSearchRepository.java b/src/main/java/com/everytime/domain/post/repository/PostSearchRepository.java index c9384ae..bbd6354 100644 --- a/src/main/java/com/everytime/domain/post/repository/PostSearchRepository.java +++ b/src/main/java/com/everytime/domain/post/repository/PostSearchRepository.java @@ -13,14 +13,24 @@ public interface PostSearchRepository extends JpaRepository { // 특정 카테고리 내 검색 - @Query(""" - SELECT p FROM Post p - WHERE p.category = :category - AND ( - LOWER(p.title) LIKE LOWER(CONCAT('%', :keyword, '%')) - OR LOWER(p.content) LIKE LOWER(CONCAT('%', :keyword, '%')) - ) -""") + @Query( + value = """ + SELECT p FROM Post p + WHERE p.category = :category + AND ( + LOWER(p.title) LIKE LOWER(CONCAT('%', :keyword, '%')) + OR LOWER(p.content) LIKE LOWER(CONCAT('%', :keyword, '%')) + ) + """, + countQuery = """ + SELECT COUNT(p.id) FROM Post p + WHERE p.category = :category + AND ( + LOWER(p.title) LIKE LOWER(CONCAT('%', :keyword, '%')) + OR LOWER(p.content) LIKE LOWER(CONCAT('%', :keyword, '%')) + ) + """ + ) Page searchPosts( @Param("category") Category category, @Param("keyword") String keyword, @@ -28,11 +38,18 @@ Page searchPosts( ); // 전체 카테고리 대상 검색 (ALL) - @Query(""" - SELECT p FROM Post p - WHERE LOWER(p.title) LIKE LOWER(CONCAT('%', :keyword, '%')) - OR LOWER(p.content) LIKE LOWER(CONCAT('%', :keyword, '%')) - """) + @Query( + value = """ + SELECT p FROM Post p + WHERE LOWER(p.title) LIKE LOWER(CONCAT('%', :keyword, '%')) + OR LOWER(p.content) LIKE LOWER(CONCAT('%', :keyword, '%')) + """, + countQuery = """ + SELECT COUNT(p.id) FROM Post p + WHERE LOWER(p.title) LIKE LOWER(CONCAT('%', :keyword, '%')) + OR LOWER(p.content) LIKE LOWER(CONCAT('%', :keyword, '%')) + """ + ) Page searchAll( @Param("keyword") String keyword, Pageable pageable