kakasoo

TypeORM에서 오늘 날짜의 데이터만 뽑기 본문

프로그래밍/NestJS

TypeORM에서 오늘 날짜의 데이터만 뽑기

카카수(kakasoo) 2022. 12. 25. 15:04
반응형

[Postgresql] TO_CHAR로 날짜 다루기

this.repository
    .createQueryBuilder('qb')
    .where(`TO_CHAR(qb.createAt, 'yyyy-mm') = TO_CHAR(CURRENT_DATE, 'yyyy-mm')`)
    .getMany();

 

특정 날짜의 데이터를 뽑기 위해서는 일반적으로 검색 기간의 시작 날짜와 끝 날짜를 이용해 조회한다.

그래서 where문에 MoreThan, MoreThanEqual, LessThan, LessThanEqual, Between 을 사용한다.

다만 이 방식으로는 DB에서 사용 중인 시간 대에 맞게, 클라이언트, 서버, DB 간 시간 대를 맞춰주어야 한다.

서버에서 DB 시간을 맞추든, 아니면 값을 일일히 변환해주든, 변환 과정이 필요하다.

이걸 DTO에서 transform할 게 아니라면, 간단한 방법은 DB의 시간 대로 데이터를 뽑는 것이다.

반응형