目前我正在使用此命令:
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:* ghazal *但无法使用 curl 更新文档正则表达式
curl 'localhost:8983/solr/update?commit=true' -H 'Content-type:application/json' -d '[{"id":"*ghazals*","pr":{"set":55}}]
Solr版本:4.10.3
答案 0 :(得分:0)
您必须自行检索所有文档并执行更新。 Solr目前无法对多个文档执行单个更新(又名"按查询更新")。
执行此操作的正确方法是执行查询(使用通配符或正则表达式匹配),遍历文档然后提交更新消息(作为批量消息或单个请求,具体取决于多少更新您正在执行的内容),更改您已检索的文档的内容。