2017-02-14 53 views
0

目前我使用這個命令:Solr的:如何部分更新Solr的文檔中使用正則表達式

curl 'localhost:8983/solr/update?commit=true' -H 'Content-type:application/json' -d '[{"id":"rekhta.org/ghazals/Alama_3.8","pr":{"set":100}}]' 

但這種更新只發生在其ID文件是「rekhta.org/ghazals/Alama_3.8」

如何更新其ID包含「ghazals」 (例如rekhta.org/ ghazals/Alama_3.8)的文檔。 我正在使用正則表達式Q = ID文件:* *加扎勒但使用捲曲正則表達式

curl 'localhost:8983/solr/update?commit=true' -H 'Content-type:application/json' -d '[{"id":"*ghazals*","pr":{"set":55}}] 

Solr的版本無法更新文件:4.10.3

回答

0

你必須檢索所有文檔並自行執行更新。 Solr目前沒有辦法針對多個文檔執行單個更新(即「按查詢更新」)。

執行此操作的正確方法是執行查詢(使用通配符或正則表達式匹配),循環遍歷文檔,然後提交更新消息(作爲批量消息或單個請求,具體取決於您正在執行的許多更新)會更改您檢索到的文檔的內容。