Given the following Solr data:

<doc>
    <str name="index_id">1008rs1cz0icl2pk</str>
    <date name="message_state_ts">2014-10-07T14:18:29.784Z</date>
    <str name="docid_s">h60fmtybz0i7sx87</str>
    <long name="_version_">1481314421768716288</long></doc><doc>
    <str name="index_id">u42xyz1cz0i7sx87</str>
    <str name="foreign_key_docid_s">h60fmtybz0i7sx87</str>
    <long name="_version_">1481314421768716288</long></doc><doc>
   <str name="index_id">u42xyz1cz0i7sx87</str>
   <str name="foreign_key_docid_s">h60fmtybz0i7sx87</str>
   <long name="_version_">1481314421448900608</long></doc>

I would like to know how to *DELETE documents* above on the Solr console or
using a script that achieves the same result as issuing the following
statement in SQL (assuming all of these columns existed in a table called x
):

DELETE FROM x WHERE foreign_key_docid_s in (select docid_s from x
where message_state_ts < '2014-10-05' and message_state_ts >
'2014-10-01')

Basically, delete all derived documents whose foreign key is the same as
the primary key where the primary key is selected between 2 dates.

Question originally posted on stackoverflow.com ->
http://stackoverflow.com/questions/26248372/delete-in-solr-based-on-foreign-key-like-sql-delete-from-where-id-in-selec

Reply via email to