Deleting documents in Solr using PHP
Now let us go ahead and delete this document from Solr.
$deleteQuery = $client->createUpdate(); $deleteQuery->addDeleteQuery('author:Smith'); $deleteQuery->addCommit(); $client->update($deleteQuery);
Now, if we run the following query on Solr, the document is not found:
http://localhost:8080/solr/collection1/select/?q=smith
What we did here was that we created a query in Solr to search for all documents where the author field contains the smith
word and then passed it as a delete query.
We can add multiple delete queries via the addDeleteQueries
method. This can be used to delete multiple sets of documents in a single call.
$deleteQuery->addDeleteQuery(array('author:Burst', 'author:Alexander'));
When this query is executed, all documents where the author field is either Burst
or Alexander
are deleted from the index.
In addition to deleting by a query, we can also delete by ID. Each book that we have added to our index has an id
field, which we...