<!-- 전체 게시글 조회 (메인 피드) -->
<select id="getBoardAll" resultType="Board" parameterType="map">
SELECT
m.name,
b.member_id,
b.board_id,
b.board_img,
b.content,
b.reg_date,
b.mod_date,
b.del_yn,
b.use_yn,
IFNULL(bl.likes_count, 0) AS totalLikes, -- 총 좋아요 수
IFNULL(ul.user_liked, 'N') AS userLiked -- 특정 사용자의 좋아요 여부
FROM
BOARD b
JOIN
MEMBER m ON b.member_id = m.member_id
LEFT JOIN
(SELECT board_id, COUNT(*) AS likes_count
FROM BOARDLIKES
WHERE del_yn = 'N'
GROUP BY board_id) bl
ON
b.board_id = bl.board_id
LEFT JOIN
(SELECT board_id, 'Y' AS user_liked
FROM BOARDLIKES
WHERE del_yn = 'N' AND member_id = #{memberId}) ul
ON
b.board_id = ul.board_id
WHERE
b.del_yn = 'N'
AND b.use_yn = 'Y'
<if test="keyword != 'none'">
AND b.content LIKE CONCAT('%', #{keyword}, '%')
</if>
ORDER BY
b.reg_date DESC;
</select>
+ 해시태그 기능은.. 티스토리처럼 이렇게 추가하고 싶은데 인스타처럼 하기로 변경
'개발일지' 카테고리의 다른 글
Git rebase vs. merge (0) | 2025.01.28 |
---|---|
Node.js 및 npm version 오류 관련 (0) | 2024.11.22 |
JWT (1) | 2024.11.19 |
현재 진행 상황 + 해야 할 것 (0) | 2024.11.15 |
Vue3와 Spring Boot를 사용하여 카카오 OAuth 로그인 (0) | 2024.11.14 |