2012-03-09 53 views
2

我使用Apache Solr來搜索我的數據庫..!如何返回與Solr中的查詢匹配的列?

想我已經從我的表中的索引的一個4列.. !! ..我只是想,只有那些列包含我的查詢詞響應返回.. !! ..是可能的??

例如:

我有一個表汽車與列:名,顯示名,描述,額外 .. !!

現在我做一個查詢,像這樣:

localhost:8983/solr/select?q=maruti&wt=json 

現在一些在某些行只可能包含單詞 「馬魯蒂

所以,作爲回報,我只想要名稱(以及其他一些固定字段,如ID)..

同樣,如果描述包含這個詞,那麼只有描述應不returned..and其他列.. !!

我該如何實現這個..?

+0

爲什麼這個問題得到downvote .. ?? ..請具體.. !! – 2012-03-09 05:05:54

回答

5

你也許可以用Solr 4和一個自定義轉換器來做到這一點 - 我對文檔的閱讀似乎表明了這一點。但我認爲,這將是一項相當多的工作。最終,您可能需要編寫一個前端過濾器,但這對於複雜的查詢來說很困難。

更新: 下面是如何做到這一點Solr中沒有定製變壓器等啓用高亮所有四列:

hl=on&hl.fl=name,displayName,description,extra 

的Solr將返回包含密鑰和領域的「突出」結構(s)匹配查詢。您還將獲得突出顯示的片段,無論您使用它們是否由您決定。看到這裏的額外參數:http://wiki.apache.org/solr/HighlightingParameters

+0

是的..我想寫前端過濾器...新的thanx答覆...我會看看怎麼辦..! – 2012-03-09 15:36:07

+0

@RamandeepSingh,請看我更新的答案。我認爲它回答你的問題! – 2012-03-09 17:22:48

+0

這需要存儲所有4列。如果我有100列? – squeeish 2014-12-23 06:25:33