如何用curl查询删除SOLR索引数据?

rta7y2nd  于 2022-11-05  发布在  Solr
关注(0)|答案(3)|浏览(234)

我有一个SOLR schema.xml,如下所示:

<field name="cartype" type="lowercase" indexed="true" stored="true"/>
<field name="color" type="lowercase" indexed="true" stored="true"/>

我想用curl命令从SOLR数据库中删除“blue”和“stationwagon”标记的记录。
但我没有这样做,跟着命令:

curl http://46.231.77.98:7979/solr/update/?commit=true -H "Content-Type: text/xml" -d "<delete>(cartype:stationwagon)AND(color:blue)</delete>"

你有什么建议吗?

rqcrx0a6

rqcrx0a61#

您必须添加query标记。

<delete><query>(cartype:stationwagon)AND(color:blue)</query></delete>
osh3o9ms

osh3o9ms2#

使用JSON而不是XML:

curl -g "http://localhost:8983/solr/$core/update" \
     -H 'Content-Type: application/json' \
     -d '{"delete":{"query":"field:value"}}'
xxls0lw8

xxls0lw83#

这样一来就容易多了:

curl -g "http://localhost:8983/solr/collection/update" \
     -d '<delete><query>(cartype:stationwagon)AND(color:blue)</query></delete>'

curl "http://localhost:8983/solr/collection/update?commit=true"

这是一个简单的请求。

相关问题