user2175831
user2175831

Reputation: 291

Query two or more sphinx indexes

I'm using php API to query two sphinx indexes as below

$cl->Query("test","index1 index2");

and I'm getting the result from both of successfully but I can't differentiate which result is from which index. is there a way to tell the difference? or do I need to do 2 queries separately?

Upvotes: 0

Views: 442

Answers (1)

barryhunter
barryhunter

Reputation: 21091

Set a unique attribute on each

source1 {
  sql_query = SELECT id, 1 as index_id, .... 
  sql_attr_unit = index_id
}
source2 {
  sql_query = SELECT id, 2 as index_id, .... 
  sql_attr_unit = index_id
}

Results will contain a 'index_id' attribute.

Almost the same if using RT indexes. just need to define a rt_attr_unit and then populate it appropriately when you inject data into the index.


The otherway, persumably you've already arranged for the ids in the two indexes to be non-overlapping (it wont work if have the same ids in both indexes) so can look a the ID to deduce the source index.

Upvotes: 1

Related Questions