You can put those fields as a DocValue type of field. They are optimized for use during search(or join in this case).
Then create a collector that collects the documents which have the same value in those fields. Have other more experienced comment though before you start implementing it. 2013/1/18 Ramprakash Ramamoorthy <r4ramprak...@gmail.com> > Dear all, > > I know, lucene is no relational database, but spare me. I need to > run a search across an index, and find fields that have a common equal > value, where the common value is unknown(to be determined at run time). > > An outright sql query would be *SELECT * from table1 where > table1.field1=table2.field3=table3.field2; * > > * *How do I proceed upon this? Get distinct values (if at all it is > possible) for a field and iterate the query across fields is the only > solution? Or is there an aesthetic way? > > Please to help. Thanks in advance. > > -- > With thanks and regards, > Ramprakash Ramamoorthy, > SASTRA University, > India. > -- Sincerely yours, Apostolis Xekoukoulotakis