Query Builder
[ What is QueryBuilder ]
- QueryBuilder는 Typeorm의 가장 강력한 기능 중 하나이다.
- SQL문을 대신하는 문법으로, 쿼리를 실행하고 / 자동으로 변환된 Entity를 얻을 수 있다.
1️⃣ QueryBuilder를 사용한 간단한 Typeorm 예시
const firstUser = await connection
.getRepository(User)
.createQueryBuilder("user")
.where("user.id = :id", {id: 1})
2️⃣ 변환된 sql문 형태
select
user.id,
user.firstName,
user.lastName
from userTable as user
where user.id = 1;
3️⃣ 쿼리를 적용하여 변환된 Entitry 반환값
User {
id: 1,
firstName: "Hong",
lastName: "NyungKi"
}
[ Important note when using the QueryBuilder ]
QueryBuillder사용시 where절에는 반드시 고유한 매개변수명을 작성하도록 한다.
const result = await getConection()
.createQueryBuilser('user')
.leftJoinAndSelect
[ How to create and use a QueryBuilder ]
QueryBuilder를 만드는 방법 1️⃣ : getConnection()메소드 호출
import {getConnection} from "typeorm";
const user = await getConnection()
.createQueryBuilder()
.select("user")
.from(User, "user")
.where("user.id = :id", { id: 1 })
.getOne();
QueryBuilder를 만드는 방법 2️⃣ : Entity manager()메소드 호출
import {getManager} from "typeorm";
const user = await getRepository(User)
.createQueryBuilder()
.select("user")
.from(User, "user")
.where("user.id = :id", { id: 1 })
.getOne();
Author And Source
이 문제에 관하여(Query Builder), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ghdsudrl94/Query-Builder-jovytzb0저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)