I have found that this is possible, but currently I have problems if the
field name to join in all the 3 collections are different.

For example, if in "people" collection, it is called personId, and in
"pets" collection, it is called petsId. But in "collectionId", it is called
collectionName, but it won't work when I place it this way below. Any
suggestions on how I can handle this?

innerJoin(innerJoin(
  search(people, q=*:*, fl="personId,name", sort="personId asc"),
  search(pets, q=type:cat, fl="pertsId,petName", sort="personId asc"),
  on="personId=petsId"
),
  search(collection1, q=*:*, fl="collectionId,collectionName",
sort="personId asc"),
)on="personId=collectionId"


Regards,
Edwin

On 14 June 2017 at 23:13, Zheng Lin Edwin Yeo <edwinye...@gmail.com> wrote:

> Hi,
>
> I'm using Solr 6.5.1.
>
> Is it possible to have multiple hashJoin or innerJoin in the query?
>
> An example will be something like this for innerJoin:
>
> innerJoin(innerJoin(
>   search(people, q=*:*, fl="personId,name", sort="personId asc"),
>   search(pets, q=type:cat, fl="personId,petName", sort="personId asc"),
>   on="personId"
> ),
>   search(collection1, q=*:*, fl="personId,personName", sort="personId
> asc"),
> )
>
> Regards,
> Edwin
>

Reply via email to