通过Solr中的动态字段聚合

时间:2017-10-27 15:48:51

标签: solr solrj sunspot solrnet

我在Solr的2个索引中有以下数据(从应用程序代码索引)

  1. 学生
  2. 我拥有的所有原始数据都是学生级别的。学生可以参加多个班级。问题是学生可以进出课程,而class_id不是发送的学生数据的一部分。

    我目前正在查询“学生”分面的聚合。如何查询相同的facet Class ID?

    如果我查询班上的所有学生,我会得到我的结果,但我需要循环。另一种解决方案是使用student_ids并在代码中的类级别重新聚合。我想检查一下我是否可以在Solr中使用任何其他解决方案。

    (加入Solr是INNER JOINs并且帮助不大)。

    是否有可能在插件的帮助下实现这一目标?

    说我拥有的数据如下。

    student_id, points, activity_date
    1, 10, 2017-01-01
    1, 10, 2017-01-02
    1, 10, 2017-01-03
    2, 10, 2017-01-01
    2, 10, 2017-01-03
    3, 10, 2017-01-02
    3, 10, 2017-01-03
    3, 20, 2017-01-04
    
    class_id, student_id
    11,1
    11,2
    12,1
    12,3
    13,2
    13,3
    

    当我从1月1日到1月4日的学生询问时,我得到了     student_id,分     1,30     2,20     3,40

    http://localhost:8983/solr/development/select?q=*%3A*&fq=type%3AStudent&wt=json&indent=true&stats=true&stats.field=points_i&f.points_i.stats.facet=id_i
    

    这就是我需要的,学生与班级的外部联系。 我从1月1日到1月4日所有课程查询时的示例。

    class_id, points
    11, 50
    12, 60
    13, 70
    

    我如何通过class_id

    获得此功能

0 个答案:

没有答案