2

收藏:年

条目 1

{
  _id: ObjectId("4f2fd2ee4516ed6ceebbe17c"),
  shows: [
    {
      day: 1,
      hasVideos: false,
      month: 1,
      showid: 1252187000,
      venue: "Someplace"
    },
    {
      day: 2,
      hasVideos: false,
      month: 2,
      showid: 1252188010,
      venue: "Philly"
    }
  ],
  year: 1988
}

条目 2

{
  _id: ObjectId("4f2fd2ee4516ed6ceebbe17c"),
  shows: [
    {
      day: 19,
      hasVideos: false,
      month: 1,
      showid: 1252187999,
      venue: "Hunt's"
    },
    {
      day: 21,
      hasVideos: false,
      month: 1,
      showid: 1252188030,
      venue: "Hunt's"
    }
  ],
  year: 1987
}

years现在,我在我的 redis 存储中创建了一个集合。这是用 . 形式的字符串填充的year:1988。我创建了一个名为year:1988. 但这是错误的。我想嵌套这些显示哈希的数组。

如何将哈希嵌套两个集合?1988:01:01我是否应该继续该模式并以and的形式创建一个集合1988:02:02来存储第一个条目?

谢谢

4

1 回答 1

1

如果您只想按日期(或年份)查询,则应使用排序集作为查找。

redis.io 上的排序集

您要做的是使用节目的 ID 或连载节目作为成员,并使用节目播出或发生的日期作为得分

请注意,如果您只存储节目 ID,则需要执行另一次查找以获取节目的详细信息。

现在您可以执行似乎是您想要的范围查询:

ZRANGEBYSCORE

ZREVRANGEBYSCORE

于 2012-12-13T16:01:32.477 回答