typeorm关联查询如何筛选关联数据?-灵析社区

三千米的偷感

const user = this.userRepository .createQueryBuilder('user') .leftJoin('user.tel', 'tel') .where('user.id = :userId', { userId }) .getOne(); return user; 一个user有多个tel,是一对多的关系,现在我只需要查最新的一条即可,没必要把tel全查出来,应该怎么写?

阅读量:20

点赞量:0

问AI
const user = await this.userRepository .createQueryBuilder('user') .leftJoinAndSelect( // 注意这里用了 'leftJoinAndSelect' 而不只是 'leftJoin' 'user.tel', 'tel', 'tel.createdDate = (SELECT MAX(t.createdDate) FROM TelEntity t WHERE t.userId = user.id)' // 假设 tel 表的实体名为 'TelEntity',且 tel 表里与 user 表关联的字段名是 'userId' ) .where('user.id = :userId', { userId }) .getOne();