Javascript TypeORM-3个相关表之间的左连接/内部连接问题

Javascript TypeORM-3个相关表之间的左连接/内部连接问题,javascript,postgresql,typescript,orm,typeorm,Javascript,Postgresql,Typescript,Orm,Typeorm,所以我有个无法解决的问题,也许你能帮我。 所以:我有三个实体——User、Team、UserTeam,其中包含(userId、teamId、teamRole)。UserTeam是包含复合主键的实体。 如下面代码所示: @Index(["teamId", "userId"], { unique: true }) export class UserTeam { @PrimaryColumn("int") userId = undefined; @PrimaryColumn

所以我有个无法解决的问题,也许你能帮我。 所以:我有三个实体——User、Team、UserTeam,其中包含(userId、teamId、teamRole)。UserTeam是包含复合主键的实体。 如下面代码所示:

@Index(["teamId", "userId"], { unique: true })
export class UserTeam {

    @PrimaryColumn("int")
    userId = undefined;

    @PrimaryColumn("int")
    teamId = undefined;

    @ManyToOne(type => Team)
    team = undefined;

    @ManyToOne(type => User)
    user = undefined;

    @Column({
        type: 'enum',
        enum: ['CAPITAN', 'PLAYER'],

    })
    teamRole = "";
}
所以->我想创建一个查询,返回特定团队的所有玩家(用户)。因此,我创建了一个类似eq({team_id:1,players:{userId:1,userId:21,userId:34})的查询(而不是id,我希望有对象作为示例)

getRepository(团队).createQueryBuilder(“团队”)
.leftJoin(“team.users”、“userTeam”)
.leftJoin(“userTeam.user”、“user”)
.getMany()
返回我的查询:

SELECT "team"."id" AS "team_id", "team"."name" AS "team_name", "team"."shortcut" AS "team_shortcut", "team"."nationality" AS "team_nationality", "team"."description" AS "team_description", "team"."imagePath" AS "team_imagePath", "team"."division" AS "team_division" FROM "team" "team" LEFT JOIN "user_team" "userTeam" ON "userTeam"."userId"="team"."id"  LEFT JOIN "user" "user" ON "user"."id"="userTeam"."userId"
问题就在这里,因为我有

 LEFT JOIN "user_team" "userTeam" ON "userTeam"."userId"="team"."id"```
而不是

userTeam.teamId=team.id

你有什么办法解决我的问题吗?我很乐意得到任何建议和提示。

问题解决了。我有相反的关系。我应该有

@OneToMany(type=>UserTeam,UserTeam=>UserTeam.user)
团队=未定义;
@OneToMany(类型=>UserTeam,UserTeam=>UserTeam.team)
用户=未定义;
 LEFT JOIN "user_team" "userTeam" ON "userTeam"."userId"="team"."id"```
userTeam.teamId=team.id