[英]TypeORM select alias of column name
this.sampleRepo.find (
{
order: {
id: "DESC"
},
select: ['id','group']
}
);
这会按预期返回 id 和 group,但是如何将 id 作为 user_id 返回? 以及如何从组中区分 select 值?
只需在 select 字符串中添加一个别名,例如:
select: ['id AS user_id','group AS user_group']
如果上一个选项不起作用,它应该在 queryBuilder 中起作用:
this.sampleRepo
.createQueryBuilder('user')
.orderBy('user.id', 'DESC')
.select(['id AS user_id','group AS user_group'])
.getRawMany() // or .getMany()
我已经用我的一个例子(这里的最后一个)做了你需要的东西,但是写了这个(更新。用 getRawMany 和 distinct 修复) :
getMany(): Promise<UserEntity[]> {
return this.userRepo.createQueryBuilder('user')
.where({ username: 'breckhouse0' })
.select(['DISTINCT (user.username) AS user_name', 'user.id AS user_id'])
.getRawMany();
}
这正如你所料 - 结果
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.