使用solr

时间:2018-01-18 10:51:13

标签: solr

我有一个二级索引,用于存储在搜索文档的主索引上执行的搜索项。我想在二级索引上运行搜索,并按执行频率的降序列出搜索条件,就像我想找到搜索次数最多的10个条件。

辅助索引以此格式存储数据

Search Term | Date ...<some more irrelevant fields>
term1 | 01-01-2018
term2 | 01-01-2018
term3 | 02-01-2018
term1 | 02-01-2018
term3 | 03-01-2018

我需要这样的东西,我可以用java来操作。所以任何来自solr的搜索词和频率的json都可以。

Searh Term, Frequency
term1, 2
term2, 1
term3, 2

我查了一些文章,其中说明了术语向量组件的使用,但这些文章对文档中特定术语存在的次数进行搜索。

有人可以帮助我获得理想的结果。

由于

1 个答案:

答案 0 :(得分:0)

您可以use faceting计算给定令牌在字段中出现的频率。

$days = array( 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday' );
$tag_checker = $wpdb->get_results( "SELECT tag FROM custom_tag WHERE tag IN ('" .implode("','", $days). "')");


if( empty( $tag_checker ) ) :
    echo 'hello';
endif;

您还可以提供许多其他参数,例如按期限或计数排序。