TypeORM:查询数据时如何使用列的别名

这个简洁的教程向您展示了在使用 TypeORM 选择数据时如何使用列的别名为列分配临时名称。这里的重点是AS关键字。为了更清楚,让我们研究几个例子。

用户实体:

// KindaCode.com
// User entity
import { Entity, PrimaryGeneratedColumn, Column} from 'typeorm';

@Entity()
export class User {
  @PrimaryGeneratedColumn()
  id: number;

  @Column()
  name: string;

  @Column({nullable: true})
  age: number;
}

在查询构建器中使用列别名来检索所有用户:

const userRepository = myDataSource.getRepository(User);
const users = await userRepository
      .createQueryBuilder('user')
      .select([
        'user.id AS user_id',
        'user.name AS user_name',
        'user.age as user_age',
      ])
      .getRawMany();

console.log(users);

您的输出将类似于以下内容:

[
  { user_id: 1, user_name: 'User 1', user_age: 20 },
  { user_id: 2, user_name: 'User 2', user_age: 30 },
  { user_id: 3, user_name: 'User 3', user_age: 40 }
]

TypeORM 发展迅速,需要学习的东西很多。