首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在TypeORM QueryBuilder中使用通配符的LIKE查询

在TypeORM QueryBuilder中使用通配符的LIKE查询
EN

Stack Overflow用户
提问于 2018-08-30 23:35:55
回答 1查看 10.9K关注 0票数 2

在我的NestJS项目中,我有这个TypeORM查询:

代码语言:javascript
复制
const users = await this.usersRepository.find({
  skip,
  take,
  order: sortingObject,
  join: {
      alias: 'user',
      leftJoinAndSelect: {
          country: 'user.country_id',
      },
  },
});

现在我只想返回名称中包含John的用户。在SQL中,这将是一个LIKE查询LIKE %John%

https://github.com/typeorm/typeorm/blob/master/docs/find-options.md中,没有关于通配符LIKE查询的信息。

How to perform a like query Typeorm给出了一个解决方案:.where("user.firstName like :name", {name: '%' + firstName + '%' })

但是,我无法使用skiptake,这在使用where()而不是find()时是可用的。

对如何使用TypeORM QueryBuilder实现这一点有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2018-08-31 16:09:39

QueryBuilder中有分页方法(.skip(int).take(int))。

试试这样的东西。

代码语言:javascript
复制
const users = await this.usersRepository
    .createQueryBuilder("user")
    .leftJoinAndSelect("user.country_id", "country")
    .skip(5)
    .take(10)
    .where("user.firstName like :name", {name: '%' + firstName + '%' })
    .orderBy("user.id", "DESC")
    .getMany();

详情请参考文档:Using Pagination in TypeORM QueryBuilder

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52100765

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档