Reputation: 613
I have tow entities: Users and Settings tables.
@Entity()
export class Users {
@PrimaryGeneratedColumn()
id: number;
@Column()
name: string;
@Column()
settingID: number;
}
@Entity()
export class Settings {
@PrimaryGeneratedColumn()
id: number;
@Column()
name: string;
}
How to select data from Settings table ?
return this.usersRepository
.createQueryBuilder("users")
.select(['users.id', 'users.name', 'settings.name'])
.leftJoinAndSelect(Settings, 'settings', 'users.settingID = settings.id')
.getMany();
Now I don't get data from Settings table, only users table.
Upvotes: 0
Views: 1558
Reputation: 3356
return this.usersRepository
.createQueryBuilder("users")
.select(['users.id', 'users.name'])
.leftJoinAndSelect('users.settings', 'settings', 'users.settingID = settings.id')
.addSelect(['settings.name', 'settings.prop1', 'settings.prop2'])
.getMany();
or
return this.usersRepository
.createQueryBuilder("users")
.leftJoinAndSelect('users.settings', 'settings', 'users.settingID = settings.id')
.select(['users.id', 'users.name', 'settings.name', 'settings.prop1', 'settings.prop2'])
.getMany();
Upvotes: 3