Day33

강태훈·2026년 2월 12일

nbcamp TIL

목록 보기
33/58

sql 코드카타

SELECT NAME
FROM ANIMAL_INS
ORDER BY DATETIME
LIMIT 1
;

LIMIT n: n개 제한

SELECT COUNT(*) AS USERS
FROM USER_INFO
WHERE YEAR(JOINED) = 2021
AND AGE BETWEEN 20 AND 29
함수설명예시
YEAR(date)연도 추출YEAR('2023-05-10') → 2023
MONTH(date)월 추출MONTH(JOINED)
DAY(date)일(day) 추출DAY(JOINED)
QUARTER(date)분기 추출 (1~4)QUARTER('2023-07-10') → 3
WEEK(date)주차 추출WEEK(JOINED)
HOUR(datetime)시 추출HOUR('2023-02-01 14:20:00') → 14
MINUTE(datetime)분 추출20
SECOND(datetime)초 추출00
SELECT COUNT(DISTINCT NAME) AS count
FROM ANIMAL_INS
WHERE NAME IS NOT NULL
;

DISTINCT: 중복된 값을 제거하고 서로 다른 값만 조회하거나 계산할 때 사용


과제 진행 상황

  1. 댓글 전체 조회 오류
{
    "timestamp": "2026-02-12T06:55:57.886Z",
    "status": 400,
    "error": "Bad Request",
    "path": "/comments"
}

@PathVariable로 필터링하면 정상작동하는데 필터링 없이 하면 오류 발생

@RequestParam(required = false) Long profileId

여기에서 (required = false)가 빠져서 발생...

  1. 일정 단건 조회 오류
{
    "calenderId": 1,
    "title": "영화시청3",
    "content": "3시에 cgv",
    "profileId": 1,
    "createdAt": "2026-02-12T15:43:51.240603",
    "modifiedAt": "2026-02-12T15:43:51.240603",
    "comments": [
        {
            "content": "뭐로 바꾸지",
            "calender": {
                "title": "영화시청3",
                "content": "3시에 cgv",
                "profile": {
                    "name": "robo",
                    "email": "robo@ex.com",
                    "password": "12345678",
                    "createdAt": "2026-02-12T15:43:40.023868",
                    "hibernateLazyInitializer": {},
                    "modifiedAt": "2026-02-12T15:43:40.023868",
                    "userId": 1
                },
                "calenderId": 1,
                "comments": [
                .
                .
                .
}

응답 dto에 엔티티 통채로 넣었더니 무한 반복 출력

public class GetSingleCalenderResponse {
	private final List<GetCommentResponse> comments;

	public GetSingleCalenderResponse(Calender calender) {
	        this.comments = calender.getComments()
	                .stream()
	                .map(GetCommentResponse::new)
	                .toList();
	}
}

응답 dto에서 엔티티를 바로 반환하던것을 dto로 변형해서 반환


맞춤형 강의

builder빌더 패터 구현법
빌더는 클래스 레벨에 붙이지 말아라
생성자 대용

테스트: ctrl shift T

0개의 댓글