【发布时间】:2019-08-13 22:33:01
【问题描述】:
我有这个查询的回购
@EntityRepository(Refund)
export class RefundRepository extends Repository<Refund> {
getRefundsByUserId(id: number): Promise<Refund[]> {
return this.createQueryBuilder('refund')
.select([
'refund.id',
'refund.userId',
'refund.amount',
'refund.createdAt',
'refund.updatedAt',
])
.leftJoinAndSelect('refund.fkFlightRefund', 'flight')
.leftJoinAndSelect('refund.currency', 'refundCurrency')
.leftJoinAndSelect('refund.status', 'refundStatus')
.where({ userId : id })
.getMany();
}
我的问题是与refund.fkFlightRefund ,我想返回一个字段名称“flight”但我得到“fkFlightRefund”,
我也尝试过使用这个左连接:
.leftJoinAndSelect('refund.fkFlightRefund', 'flights' , 'refund.fkFlightRefund.title = :title',
{ title: 'flight' },)
在谷歌上搜索问题后,
我想做什么可能吗?
任何帮助都可以!
【问题讨论】:
-
在以下行中,
flight是表别名,而不是 columnName。.leftJoinAndSelect('refund.fkFlightRefund', 'flight')> 根据文档,“第一个参数是您要加载的关系,第二个参数是您分配给该关系表的别名。”在实际的select查询中使用上述别名 -
@SagarChillukuri 我不太明白实际的选择查询是什么,我试图在选择中添加一个“飞行”字段,但它没有改变它
标签: node.js typescript nestjs typeorm