【问题标题】:Firestore query by date [duplicate]按日期查询 Firestore [重复]
【发布时间】:2021-11-14 12:10:36
【问题描述】:

我正在尝试向 Firestore 数据库查询集合并按日期过滤。我有一个时间戳字段(dateStart),我需要得到今天有日期的结果,我不在乎时间,我尝试使用它,但它只有相同的时间才能工作

我的文档:2021 年 9 月 20 日 01:30:00 UTC+1

refWallet
  .where("dateStart", "==", new Date("2021,09,20"))
  .get()

【问题讨论】:

    标签: javascript firebase google-cloud-firestore


    【解决方案1】:

    您将需要一个包含起点和终点的范围查询来涵盖预期时间。在 Firestore 中,时间戳类型始终被视为单个时间点,并且没有可用的日期和时间组件。 JavaScript 中的 Date 对象也是如此。

    refWallet
      .where("dateStart", ">=", startDate)
      .where("dateStart", "<", endDate)
      .get()
    

    如果这不是您想要的,那么您可能不应该使用时间戳类型字段,而是使用可以为您提供精确匹配的字符串。例如,您可以将日期存储为格式为 YYYYMMDD 的字符串,以便查询没有范围的确切日期。

    【讨论】:

      猜你喜欢
      • 2018-04-10
      • 1970-01-01
      • 1970-01-01
      • 2015-04-17
      • 2019-08-16
      • 1970-01-01
      • 2014-07-09
      相关资源
      最近更新 更多