如何按内部数组大小对 MongoDB 查询结果进行排序?

tsi*_*nik 5 java mongodb morphia

我正在使用 Morphia 访问 mongoDB。我需要按内部数组的长度获取对象列表。有谁知道如何在不将所有集合转移到 Java 并在那里对其进行排序的情况下完成此操作吗?

tsi*_*nik 3

好的,我找到了:-)

dataStore.find(MyClass.class).order("-inner_array.length").asList();
就可以了。

  • 我很确定这个查询实际上不起作用。它可能会在不给出错误的情况下执行,但是当我在 mongo shell 中尝试类似的操作时,实际上没有任何排序。 (3认同)