TypeORM의 QueryBuilder
QueryBuilder
는 TypeORM
의 가장 강력한 기능중 하나입니다. QueryBuilder
는 우아하고 편리한 문법으로 SQL Query
를 생성하고 실행한 다음 자동적으로 변형된Entity
를 반환해줍니다.
QueryBuilder를 통한 SELECT
Todo리스트를 예제로 알아보도록 하겠습니다. 아래의 코드는 Todo
의 Entity
와 완료되지 않은 Todo
를 반환하는 findIncomplete()
메서드 입니다. findIncomplete()
에서 where
을 통해 조건을 걸어 SELECT
해보도록 할것 입니다.
1 | import { Column, Entity, PrimaryGeneratedColumn} from 'typeorm'; |
1 | import { getRepository } from 'typeorm'; |
코드 설명
Repository
로부터 생성된 QueryBuilder
는 조건에 따라 SELECT
하여 Repository
의 타입을 가진 데이터를 반환합니다. 이 경우에는 Todo
가 됩니다.
where
메서드를 통해 조건을 걸어줄 수 있습니다. 또한 value
와 같은 매개변수를 사용하여 SQL Injection
을 막을 수 있습니다.