[67] 부트캠프 TIL - 본캠프 48일차
1. 프로그래머스 사용
1-1) sql 문제 : 조건에 부합하는 중고거래 상태 조회하기
ㄴ 문제 : 중고거래 게시판에서 2022년 10월 5일에 등록된 중고거래 게시물의 게시글id, 작성자id, 글제목, 가격, 거래상태를 조회하는 sql문을 조회해주세요. 거래 상태값에 따라 판매중,예약중,거래완료로 분류하여 출력해주시고, 결과는 게시글id기준으로 내림차순 출력해주세요
문제풀이)
1) 문제를 읽고 필요한 조건들을 체크한다
- 게시글id, 작성자id, 글제목, 가격, 거래상태를 조회
2) 2022년 10월 5일 등록된 데이터
- 등록일을 where로 조회
3) 거래 상태값에 따른 분류
- case when then을 활용하여 총 상태값 3개에 따라 분류를 해야한다.
4) 게시글 id 내림차순 정렬
- order by desc를 활용해야함.
5) 최종 완성 쿼리문
-
SELECT
BOARD_ID,
WRITER_ID,
TITLE,
PRICE,
CASE WHEN STATUS = 'SALE' THEN '판매중'
WHEN STATUS = 'RESERVED' THEN '예약중'
WHEN STATUS = 'DONE' THEN '거래완료'
END 'STATUS'
FROM USED_GOODS_BOARD
WHERE CREATED_DATE = '2022-10-05'
ORDER BY BOARD_ID DESC
- case when then을 활용해서 status값을 조건에따라 분류 했다.
- 첫번째줄은 case 다음 줄부터는 when then만 들어가면된다.
- 마지막줄엔 end로 끝을 맺고, 해당 조건들을 담을 컬럼명을 지정해주면된다.
2. 심화 개인과제 Lv4 aop
※ 지정된 2개의 메서드에 접근할때마다 접근로그가 남도록 작업해야한다.
ㄴ 강의에서 학습한 aop를 활용하여 진행한다.
1) 관리자 권한의 회원이 권한을 변경, 댓글 삭제 2가지 기능을 실행할때 접근로그를 남기면 된다.
2) 로그 기록에는 사용자의 ID, API요청시각, API요청 URL, response, request body도 남아야한다.
※ 미완성 코드
- 로그는 정상적으로 남고 있고, 각 항목에 대해서만 요구사항 대로 구하면 된다.