MongoDB-按自定义优先级排序
我目前正在使用mongoose开发一个医生目录web应用程序。它列出了数据库中的医生,包括他们的姓名、专业、等级和位置 选择医生后,它会将您带到包含其信息的详细信息页面。然而,这是我一直坚持的部分。像许多其他网站一样,总是有一个关于相关/类似结果的部分。在这种情况下,将有一个具有类似医生的部门。我希望他们被列为优先事项:MongoDB-按自定义优先级排序,mongodb,sorting,mongoose,Mongodb,Sorting,Mongoose,我目前正在使用mongoose开发一个医生目录web应用程序。它列出了数据库中的医生,包括他们的姓名、专业、等级和位置 选择医生后,它会将您带到包含其信息的详细信息页面。然而,这是我一直坚持的部分。像许多其他网站一样,总是有一个关于相关/类似结果的部分。在这种情况下,将有一个具有类似医生的部门。我希望他们被列为优先事项: 专业等于当前结果的专业 位置等于当前结果的位置 基本上就是这样。我知道如何查询与当前结果具有相同专业和位置的医生,但mongoose中的.sort()函数似乎仅限于按升序和降序
{name: "Bill", specialty: "Internal Medicine", location: "San Francisco"...}
{name: "Joe", specialty: "Cardiology", location: "San Francisco"...}
{name: "Tom", specialty: "Internal Medicine", location: "San Jose"...}
{name: "Jess", specialty: "Cardiology", location: "San Jose"...}
因此,如果我们在比尔的详细信息页面上,相关结果应按以下顺序排列:汤姆、乔,然后是杰西
任何帮助都将不胜感激!谢谢。您基本上希望对计算值进行“排名/排序”。为此,将计算结果用作新字段,然后使用新的“计算”值。理想情况下,您可以在创建数据时“存储”计算。但你的问题不清楚你的实际情况。请详细说明样本数据和预期结果。@NeilLunn感谢您回复我。我在上面添加了示例数据,但您并没有真正解释您的“输入”。我认为“当前结果”是指类似于
“心脏病学”
和“圣何塞”
。在其中,使用“逻辑”聚合运算符(如在中)返回一个“数字”值,对其进行“排序”。那里有一大堆链接。我建议你去看看他们,看看运营商是怎么做的。