我是一个新手,我需要做一个查询。我有一个数据库结构:
{
"businesses": {
"1" : {
"name": "bla",
"employees": {
"1" : {
"name": "Juan",
"schedules": {
"1": {
"scheduleId" : "72",
"from": "21/08/2020"
}
}
},
"schedules": {
"72": {
//some properties
}
}
}
}
}
}给定一个businessId和一个scheduleId,我需要获取分配了该scheduleId的所有业务员工。
我试过这样做:
export async function getEmployeesWithSchedule(businessId: string, scheduleId: string): Promise<Employee[]> {
const docs = (await admin.firestore().collection(`businesses/${businessId}/employees`)
.where("schedules.scheduleId", "==", scheduleId)
.get()).docs;
//extract results
}但我没有结果。我应该如何进行这个查询?
发布于 2021-12-24 12:26:28
尝试下面的where子句。只有在schedules映射包含键scheduleId和non-null值的键值对的情况下,才应该返回文档:
const docs = (await admin.firestore().collection(`businesses/${businessId}/employees`)
.where(`schedules.${scheduleId}`, "!=", null)
.get()).docs;https://stackoverflow.com/questions/70472098
复制相似问题