Java 在firestore中与orderBy执行whereEqualTo
我在应用程序中使用firestore,我想对所有字段“Type”值为“manual”的文档进行排序,并根据另一个名为“DateCreated”的字段对其进行排序 我试图做以下工作,但没有结果:Java 在firestore中与orderBy执行whereEqualTo,java,android,google-cloud-firestore,Java,Android,Google Cloud Firestore,我在应用程序中使用firestore,我想对所有字段“Type”值为“manual”的文档进行排序,并根据另一个名为“DateCreated”的字段对其进行排序 我试图做以下工作,但没有结果: db.collection( "Items" ).whereEqualTo( "Type", "manual" ).orderBy( "DateCreated", Query.Direction.DESCENDING
db.collection( "Items" ).whereEqualTo( "Type", "manual" ).orderBy( "DateCreated", Query.Direction.DESCENDING ).limit( 20).get()
.addOnSuccessListener( queryDocumentSnapshots -> {
....
} );
有什么理由它不起作用吗
如果我取消类型查询,那么我可能会发现返回的20个项目都不是我需要的类型,因此没有结果对我有利
谢谢您可能需要“类型”的索引。带有URL的错误消息也应该打印在logcat中。如果你能找到,只需点击那个网址。否则,请尝试手动创建一个
以后,您应该在任务中添加一个错误侦听器,并记录传递的异常。它会告诉你该怎么做。如果缺少索引,它将为您提供一个单击链接,该链接将自动创建必要的索引。