0
我有以下情況。假設我有一張這樣的大桌子。Solr:如何實現這個邏輯?
Id(unique) returnMe desc name value
1 user1 all those living in usa country USA
2. user2 all those like game game football
3. user1 my hobbies are hobby guitar
現在,我如何得到結果(returnMe)以下查詢。
1. For all those users who live in usa AND like guitar
2. For all those users who live in usa OR like guitar.
請不要修改查詢。
對於我的solConfig.xml'desc','name','value'是可搜索的可索引字段。
感謝您的任何幫助。
好吧,我編輯這個解釋我的邏輯..
Step 1: Break query on AND like (live in USA) AND (like guitar)
Step 2: Then select returnMes from first query and returnMes from second query.
Step 3: Take common returnMes, returned from first query and second query.
有什麼辦法可以Solr的做到這一點。我們可以通過Solr「join」還是其他方式來完成? 我確實想在我的PHP中這樣做,這將是巨大的開銷。
嘿感謝您的建議。我已經編輯了一些問題來解釋我的邏輯。你可以請看看這個來幫助我。 – voila 2013-04-24 04:12:18
爲什麼要手動合併結果? Solr查詢解析器支持布爾邏輯。爲什麼不通過查詢'(住在美國)和(如吉他)' – femtoRgon 2013-04-24 14:03:46
因爲'AND'試圖找到(住在美國)和(如吉他)文件明智(兩個查詢都應該出現在文件中)。例如 - 如果我只是在上面的表上做AND,那麼我不會得到任何結果,因爲沒有任何文檔滿足這兩個查詢。但我的要求是獲得「用戶1」查詢「住在美國和業餘愛好是吉他」..任何解決方案。我堅持:( – voila 2013-04-24 17:33:55