- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想用两个where条件进行查询。我开始知道直接在 firebase 中是不可能的。所以,我采用了下面的方法。将两个属性存储为一个字段并对该字段进行查询。但我没有得到正确的结果。我也收到不匹配的记录,为什么?
await firebase
.child(child)
.orderByChild('t_p')
.startAt(startAt + pId, 't_p')
.endAt((timestamp - 1) + pId, 't_p')
.limitToLast(15)
我尝试了以下方法
await firebase
.child(child)
.orderByChild('t_p')
.startAt(startAt + pId)
.endAt((timestamp - 1) + pId)
.limitToLast(15)
这两个有什么区别? startat 和 endat 中的第二个选项参数是什么?
我的数据是这样的
{
t_p: "145343423423_afihad223dadd"
},
{
t_p: "1453434133323_afihad223dadd"
},
{
t_p: "145223423423_kkkkaaass"
},
{
t_p: "145223423450_kkkkaaass"
}
如果我查询
.child(child)
.orderByChild('t_p')
.startAt("145223423423_kkkkaaass", 't_p')
.endAt("145223423450_kkkkaaass", 't_p')
.limitToLast(15)
我还获得了其他记录。为什么?
最佳答案
这是因为它是按字典顺序排序的,并且 145343423423 位于 145223423423 和 145223423450 之间。
也许您应该将 t_p 存储为 p_t?这样你就会得到这个:
{
p_t: "afihad223dadd_145343423423"
},
{
p_t: "afihad223dadd_1453434133323"
},
{
p_t: "kkkkaaass_145223423423"
},
{
p_t: "kkkkaaass_145223423450"
}
.child(child)
.orderByChild('p_t')
.startAt("kkkkaaass_14522342342")
.endAt("kkkkaaass_145223423450")
.limitToLast(15)
您应该尝试以您要访问数据的方式存储数据。
关于javascript - 具有 startAt 和 endAt 的 orderByChild 不适用于组合字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39465962/
当我试图通过电子邮件或电话号码查找记录时,我一直在使用下面的两个代码,有时第一个代码工作正常有时不起作用,第二个代码也一样。 下面的代码和什么时候应该使用“equalTo”或“startAt and
我有这个代码,但我不知道如何让歌曲从 0:19 秒开始。你能帮我吗? · ROLEPLAY · var audio = document
与StartAt,StartAtSequence等其他代码相比,我对 StartWithLastReceived subscription option的要求/重要性有些困惑。 我试图深入研究Java
好像 query.startAt 规则被破坏了,或者我不明白。有人可以确认吗?这是最小的可重现错误。 Live example ;使用 CTRL+SHIFT+i 打开 Chrome 控制台。 GitH
我在我的 Android 应用程序中使用查询时遇到了一些问题。我的数据库最终将有成百上千个轮询对象。我想一次获得大约 20 个,一旦完成这 20 个,我将获得下一个 20 个。我可以轻松获得前 20
我的实时数据库节点结构如下: Bookings{ carID1{ BookingStartTime: some POJO BookingStartTime:
我执行以下查询: firebase.database().ref().child('files').child('54a8924f8c417b2a281f4e3a4c639785/').orderBy
我已经为作业定义了以下触发器: var postbagJobTrigger = (ICronTrigger)TriggerBuilder.Create() .WithIdentity(
infiniteHandler($state) { var next = db .collection("posts") .orderBy("timestamp
我的数据从纪元开始以小时为单位存储。我只想获取数据的一部分 - 例如,我想指定我希望所有数据都从 453615 开始。 到目前为止我得到了这段代码: this.dbService.database
让我们假设上面的 Firebase 数据库架构。 我想要的是检索“15039996197”时间戳之后的消息。每个消息对象都有一个createdAt属性。 如何才能仅在特定时间戳之后获取消息?在本例中,
我想使用 startAt() 和 endAt() 方法,但我不完全理解它们是如何工作的。 假设我有当前的数据库 "users" : { "someUser1" : { "email
我正在尝试使用游标,但是每当我查询它时,我都得不到任何结果。例如,下面返回 0, null const next = admin.firestore().collectionGroup('extIte
Firebase 数据库 startAt(boolean) 做什么? Firebase documentation说: Create a query constrained to only retur
正打算将其发布到他们的 github 存储库,但似乎他们更喜欢在这里提出一般性问题。 那么使用startAt()从firebase数据库获取数据时参数有字符串长度限制吗? 我遇到了一个问题,它似乎仅限
我正在尝试使用 firebase 制作 android 应用程序,我想使用 startAt() 在 firebase 上使用搜索功能。但是结果让我很困惑。 我有一些像这样的 Firebase 数据。
我正在开发一个使用 Firebase 作为后端的 Android 应用程序。我是 Firebase 的新手,遇到了一个问题,问题是当我尝试使用 startAt 查询搜索记录时,它返回的结果不是以我输入
这段代码工作正常。 我想要的唯一改进是 - 当我传递“Pi”时,它获取所有以名称“Pi”开头的项目对象,但是当我输入“pi”时它什么都不返回! 这意味着我希望此方法 startAt(itemName)
- foo |--- -LK7rNAPKZP7drHK1eb_ |- timeStamp: 1534966072658 |--- -LKAPfu2lLl2B5zInIhX |-
在我的 firestore 数据库中,有 12+ 个文档。我通过调用以下函数 on button click 正确获取了前 3 个文档.但是在 secondclick ,尽管正确传递了 documen
我是一名优秀的程序员,十分优秀!