我在云Firestore里查询了一下,
CollectionReference questionRef = db.collection("collectionName");
Query query = questionRef.whereEqualTo("field1", "content1")
.whereEqualTo("field2",content2)
.orderBy("field3")
.limit(LIMIT);
query.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>()
{
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task)
{
if (task.isSuccessful())
{
for (DocumentSnapshot document : task.getResult())
{
Log.d(TAG, document.getId() + " => " + document.getData());
}
}
else
{
Log.w(TAG, "Error getting documents.", task.getException());
}
}
});
我收到了错误,但我有一个索引。
我得到了这个问题,我开始知道我们必须为数据库创建索引。
您可以通过简单的解决方案来解决这个问题。
首先在日志类中显示错误消息。
看起来您已经为“field3”添加了索引,但是在控制台中,请确保索引是正确的并已启用。
我正在建设聊天应用程序与后端firestore数据库与下面的结构。 我正在获取下面提到的数据。它返回我的用户id在字段“UserArray”中涉及的通道列表,并根据给定的日期/时间获取“LASTUPDATEDON”数据。 在上面的例子中,它显示了我在android logcat中创建复合索引的错误。复合索引创建完成,但仍得到相同的错误消息。
我正在尝试搜索Spotify中的曲目元数据。我想看看Spotify是否有一首来自YouTube视频的歌曲。这是我用于进行搜索的URL模板: 由于很难确定搜索查询的哪一部分是艺术家还是曲目,因此我将这两种类型添加为搜索查询的类型。 然而,当我得到一个YouTube的视频,标题是这样的:“凯蒂·佩里——我们是这样做的(官方视频)[·莱特拉·西班牙语——歌词英语”,并将其用作我的搜索词时,我得到了0个结
我明白分区键对于可伸缩性和数据存储方式很重要。但是如果我们考虑搜索,分区键是不是有点像额外的filter/where子句?所有文档都被索引,所以我可以执行查询,如下所示: 在使用此SQL查询语法时,我是否还应该指定分区键,或者指出如何允许跨分区查询?
我收集了大约75000份文件。 数据库的总大小约为45GB 在75k个文档中,约45k个文档的大小分别为900 KB(约42 GB),其余文档的大小分别约为120 KB。 每个文档都映射到其他集合中的ObjectId,并具有一个,两者都已索引。 现在,我需要获取上个月特定客户ID的文档。数量约为5500份文件。这个custId包含大小约为120 KB的小文档。 以下是我的查询: 不过,查询需要2分
我这里有3个实体A、B和C。 实体A和实体B都与实体C有关系。在我的例子中,我有一个来自实体A的当前id,并且我想使用来自实体C的查询到达实体B。 多谢了。
几个月前,我在使用java.sql时了解到了这一点。连接我需要关闭PreparedStatements和ResultSet,以防止内存泄漏,如下所述 然而,我最近开始与一个使用org.sql2o的新团队合作。连接,这是一个很好且有用的jdbc包装器,但我注意到它们通常不会关闭其org.sql2o。查询对象。 如您所见,查询对象从未显式关闭。我认为最好同时关闭查询: 但我不确定这是否真的有必要。如果