【问题标题】:How to get max value of one field from index with condition on another part如何从具有另一部分条件的索引中获取一个字段的最大值
【发布时间】:2020-06-23 20:18:45
【问题描述】:

假设我在字段 1、2 和 {1,2} 上有带有树索引的空间,其中包含以下元组:

  • [1, 1]
  • [2, 1]
  • [3, 1]
  • [4, 2]
  • [5, 2]
  • [6, 2]
  • [7, 3]
  • [8, 3]
  • [9, 3]

检索具有字段 1 的最大值且字段 2 等于 2 的元组的最快方法是什么,AFAIK 对不支持部分键,所以有什么方法可以不迭代部分选择结果?

【问题讨论】:

    标签: lua tarantool


    【解决方案1】:

    复合索引应该有顺序 {2, 1} 然后元组的第一个字段的最大值和第二个字段的特定值可以通过以下方式选择:

    index:select({2}, {iterator='REQ',limit=1})[1]
    

    【讨论】:

      猜你喜欢
      • 2011-02-14
      • 1970-01-01
      • 1970-01-01
      • 2022-01-05
      • 1970-01-01
      • 2019-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多