일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
- 와글와글 해커톤
- Array.prototype.push
- nestjs
- 타입스크립트
- 타입챌린지 Readonly2
- 코딩테스트
- 타입 챌린지 Deep Readonly
- network
- npm
- TypeScript
- typeorm
- Conditional Types
- HTTP
- 백엔드
- 189-Awaited
- Mappilogue
- 타입 챌린지 IndexOf
- node.js
- 타입 챌린지
- 와글와글
- 스터디 회고
- 해커톤
- TypeScript 타입챌린지
- Type Challenge
- type challenge omit
- 타입챌린지
- 이펙티브 타입스크립트
- 월간cs
- 노드 교과서 개정2판
- 맵필로그
- Today
- Total
목록typeorm (2)
iamkanguk.dev
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cnS4Ha/btsCk5JPl0g/Bp7COBAEIi44ytrZo1ga9k/img.png)
보통 많이 사용하는 createQueryBuilder에서 getRawMany 메서드와 getMany 메서드가 있다는 것을 Nest 개발자 분들은 알고 계실 것이다. skip과 take는 pagination 작업을 처리할 때 주로 적용하는 option이다. 하지만 skip과 take는 getRawMany에서 적용되지 않는다고 한다. TypeORM의 createQueryBuilder에서 getRawMany 메서드는 Raw Data를 반환하는데 이 때 limit와 offset을 적용시켜주어야 한다고 한다. 필자는 skip과 take이 문제가 있을지 전혀 상상하지 못하고 코드 레벨에서 실수가 있었는지 계속 봐서 시간이 많이 소요되었는데 다른 분들은 이 포스팅을 보면서 삽질을 안하셨으면 좋겠다는 생각이 든다! 좋..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/emAq5c/btsAaG6rEHF/KjsCGY2h3HPl8kAXA7LUEk/img.png)
async findMarkOnSpecificId( mark: MarkDto, ): Promise { const queryRunner = this.dataSource.createQueryRunner(); await queryRunner.connect(); await queryRunner.startTransaction(); try { const markCategoryName = await this.markCategoryRepository.findOne({ select: { title: true, }, where: { id: mark.getMarkCategoryId, status: StatusColumnEnum.ACTIVE, }, }); // metadata 부분 조회하기 const markMetadatas ..