1
我使用索拉4與日光浴,我需要刪除多個條件。該文檔顯示如何刪除查詢我如何刪除與查詢和過濾器在索爾4(瓦特/日光浴)
$client = new Solarium\Client($config);
$update = $client->createUpdate();
$update->addDeleteQuery('type:comment');
$update->addCommit();
$result = $client->update($update);
這工作正常。但是如果我需要一個不同的標準,例如writer_id:123,我不知道該怎麼做。如果我添加其他addDeleteQuery線最終原始查詢看起來像:
<update>
<delete>
<query>type:comment</query>
</delete>
<delete>
<query>writer_id:123</query>
</delete>
<commit/>
</update>
看來,這將獨立地刪除它們。我不確定它是否重要,但架構中的defaultOperator是AND。看起來像http://www.solarium-project.org/forums/topic/change-operator/,它不容易覆蓋。我不知道如何應用那裏的解決方案來刪除,如果這樣做甚至可以在這裏工作。
如何使用多個條件刪除solr中的項目?
差不多 - 將OR更改爲AND我將其標記爲已回答。我做了addDeleteQuery('(類型:評論和writer_id:123)'),似乎工作。我不確定查詢中是否需要()。 – Yehosef
完成....不需要.... – Jayendra
記住在post.jar中使用雙引號,而不是單引號,否則你會得到一個奇怪的錯誤消息:「現在不應該有...」。 –