我有一個擁有數百萬文檔的SOLR實例。模式已經很好定義(即所有字段都是鍵入的)。所有的搜索/刻面等工作正常,沒有任何問題。SOLR分析查詢
但是,我試圖做一些新的事情,我認爲在當前版本中不支持。我在使用Jetty的Windows上運行SOLR 3.5。
爲了簡化問題,我的文檔中包含像一些字段:
標識, 名稱, 市 JOBTITLE
可以說讓我有這樣一個簡單的數據: 普木,倫敦,導演 Ĵ史密斯,倫敦,項目經理 d鎖,布萊頓,開發 ķPracy,倫敦,開發
例如起見,假設這是一個馬讓人們可以找到彼此的配料系統。還假定Id是唯一的ID。
我想寫一個「採樣」查詢,它應該找到我的記錄集,以匹配任何標準的其他記錄。
因此,舉例來說,我希望定義一個標準,如:
找我,誰將會匹配在不同城市的人differfent職稱的人:如果上面的架構是一個RDBMS-SQL表
(可以說人),近似查詢將是這樣的:
SELECT P.Id, ( SELECT COUNT(1) FROM People PI Where PI.Id != P.Id AND PI.City != P.City AND PI.JobTitle != P.JobTitle ) AS FindCount FROM People P
好了,查詢可能不會是可行的,但你的想法。無論如何,還有其他一些要求,即Findcount應該大於x且小於y。
有人可以讓我知道,如果這可能在SOLR或如果這不是爲SOLR的意思。我知道SOLR 4有一個Join運算符,但在我看來,這更像是一個限制使用的IN子句。例如,考慮我想在上面的查詢中找到匹配的Id,而不是計數。
所有幫助表示讚賞。
感謝, IMMI