我有一个字符串数组,这些字符串是文档ID的结尾部分
const arr = ['ace', 'acb', 'acc', 'aca'];
const documents = [
{ id: 'xxxxxxxace' },
{ id: 'xxxxxxxacb' },
{ id: 'xxxxxxxacc' },
{ id: 'xxxxxxxaca' }
];
我需要一个查询,它将返回ID以arr
元素结尾的所有文档。
唯一的方法是对arr
进行迭代,并对每个数组元素调用endsWith
和findFirst
。
有更好的办法吗?
2条答案
按热度按时间erhoui1w1#
您可以尝试以下操作:
我正在使用Postgres,不知道Prisma是否也在MongoDB上工作,但希望它能有所帮助!
uelo1irk2#
使用
$indexOfCP
检查后缀是否位于id中,使用$map
进行数组运算,最后使用$anyElementTrue
返回匹配任何一种情况的单据。Mongo Playground