我想做与此 SQL 相同的操作,但使用 Solr 作为我的数据存储。
SELECT
DISTINCT txt
FROM
my_table;
什么语法会强制 Solr 只给我不同的值?
http://localhost:8983/solr/select?q=txt:?????&fl=txt
EDIT:因此,分面搜索似乎很合适,但当我调查它时,我意识到我只详细说明了问题的一半。
我的 SQL 查询应该读...
SELECT
DISTINCT SUBSTR(txt,0,3)
FROM
my_table;
Solr 有可能做到这一点吗?
分面将为您提供一个包含字段不同值的结果集。
E.g.
http://localhost:8983/solr/select/?q=*%3A*&rows=0&facet=on&facet.field=txt
你应该得到这样的回报:
<response>
<responseHeader><status>0</status><QTime>2</QTime></responseHeader>
<result numFound="4" start="0"/>
<lst name="facet_counts">
<lst name="facet_queries"/>
<lst name="facet_fields">
<lst name="txt">
<int name="value">100</int>
<int name="value1">80</int>
<int name="value2">5</int>
<int name="value3">2</int>
<int name="value4">1</int>
</lst>
</lst>
</lst>
</response>
查看 wiki 了解更多信息。 Faceting 是 solr 中非常酷的部分。享受 :)
http://wiki.apache.org/solr/SimpleFacetParameters#Facet_Fields http://wiki.apache.org/solr/SimpleFacetParameters#Facet_Fields
注意:分面将显示索引值,即应用所有过滤器后。解决此问题的一种方法是使用 copyfield 方法,以便您可以创建 txt 字段的构面版本。这样您的结果将显示原始值。
wiki 上提供了大量有关分面的文档。或者我确实写了一些屏幕截图..您可以在这里查看:
http://www.craftyfella.com/2010/01/faceting-and-multifaceting-syntax-in.html http://www.craftyfella.com/2010/01/faceting-and-multifaceting-syntax-in.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)