代码之家  ›  专栏  ›  技术社区  ›  divyanayan awasthi

使用redis和python的复杂查询

  •  0
  • divyanayan awasthi  · 技术社区  · 5 年前

    list1=redisClient.zrangebyscore('FID', min=20150000, max=20190000)
    

    上述代码为我提供了日期介于2015年1月至2019年1月之间的FID(首次启用日期)的所有值。因此,它为我提供了所需的结果,但我还想将基于日期和NTM值的搜索结果集附加为1,用于日期介于2015年1月至2019年1月之间的所有日期。

    list2 =redisClient.zrangebyscore('NTM', min=1, max=1)
    

    1 回复  |  直到 5 年前
        1
  •  2
  •   Itamar Haber    5 年前

    单次搜索的唯一方法是找到一种巧妙的方法,将两个值(FID和NTM)编码到一个分数中。如果没有这样一种聪明的方法,您需要执行两种搜索,然后自己将结果相交。

    提示:不要在应用程序代码中进行交集,而是考虑使用Redis的Lua脚本来节省网络带宽和延迟。