我正在尝试创建一个连接到 postgresql 数据库的 TypeORM 查询生成器以获取数据库中的所有唯一名称。我的查询看起来像这样
names = await this._context.manager
.getRepository(Names)
.createQueryBuilder('names')
.select('DISTINCT ON (names.name) names.name')
.orderBy('names.name', 'ASC')
.getRawMany();
现在,此查询会获取数据库中的所有名称,但它区分大小写,因此无法从“jane doe”中筛选出“Jane Doe”等重复项。到目前为止,我已经尝试像这样制作不同的大写/小写:.select('DISTINCT ON LOWER(names.name) names.name')
但这行不通。我还找到了一个 .distinctOn() 函数,但我也无法使该函数不区分大小写。
我是 typeORM 的新手,所以我对从这里去哪里有点茫然,有什么想法吗?
我正在使用 Node.JS 开发 postgresql DB,如果这有什么区别的话。
使用存储库,我使用 postgres 作为数据库进行了不区分大小写的搜索ILIKE
运算符以这种方式
const planning_groups: any[] =
await this.planningGroupRepository.find({
where: `"tenant_id" ILIKE '${tenantId}'`
});
where 租户ID是列名并且tenantId
是要搜索的关键字。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)