我正在构建一个大学课程搜索应用程序,我的数据包含一个我需要匹配的先决条件字段。你知道吗
它看起来像这样:“任何英语,化学,方法或专业数学”
如果我是用一个原始的Python结构来做的,我会做一个第一级列表,第二级列表,或者,在本例中:
[["English", "Literature", "Language"],["Chemistry"],["Methods","Specialist Maths"]]
所以我认为这个案子需要一个英语,化学和(方法或专家)。你知道吗
然后用Python迭代它,检查是否满足条件。你知道吗
那么,对于这样的数据和一堆输入主题,我如何使用MongoDB查询来检查课程是否合适呢?你知道吗
对于普通的查询运算符来说,您要做的事情太复杂了。因此您需要使用$where operator,它可以在查询中执行任意JavaScript。它附带了警告和限制,因此如果需要检查大量匹配的排列,它可能会非常慢。你知道吗
一个可能 帮助是创建一个单独的集合,其中的文档是您的个人或先决条件列表。这个集合将代表所有类的所有先决条件。例如:
课程本身会指向先决条件的对象,而不是实际值。查询将分两步进行。首先找到与输入主题匹配的所有先决条件。你知道吗
然后使用一个更简单的
$where operator
查询来检查课程先决条件是否在matchingPreReqList
中。你知道吗相关问题 更多 >
编程相关推荐