DB가 짤처럼 정의되어있음.
Article이라는 table에 author_id, category_id 가 외래키로 정의 되어있고
이게 Article Entity
let query = this.articleRepository
.createQueryBuilder('article')
.select([
"article.id",
"article.title",
'article.created_at',
'category.name',
'user.name'
])
.leftJoin('article.category', 'category')
.leftJoin('article.author', 'user');
if( category_id > 0 ){
query = query.where('article.category.id = :id', {id : category_id});
}
const payload = await query
.take(elem_per_page)
.skip(elem_per_page*(page-1))
.orderBy({'article.created_at' : 'DESC'})
.getMany()
검색 쿼리는 위와 같음
쿼리 결과는
이런식으로 나오는데
이거 category : {
}
이런식 말고
category_name : "Design Pattern"
이렇게 나오게 하고 싶은데 어케해야함.
as category_name 이케 하면 안됨?
select 쪽에 그렇게 해봤는데 안되더라고요
getRawMany
감사합니다.