关于sql:在Solr查询中使用内部连接

Using inner Join in Solr query

在SQL),有query这样 P / < >

1
2
3
4
SELECT *
FROM table1 INNER JOIN table2 ON
     table1.table1To2Id = table2.table2Id INNER JOIN
     table3 ON table1.table1To3Id = table3.table3Id

如何能让我用同样的query solr吗?在这场在SQL也同样的领域在solr<BR>/ 在提前谢谢 P / < >


我相信你在找这样的东西:

SQL:

1
2
3
4
5
6
7
SELECT *
FROM books
WHERE id IN (SELECT bookId
             FROM bookauthors
             WHERE authorId IN (SELECT authorId
                                FROM author
                                WHERE author.name LIKE '%Rowling%'))

Solr:

1
http://<wyn>hostname:8983/solr/SELECT?q=*:*&fq={!JOIN+FROM=bookId+TO=id}authorId:{!JOIN+FROM=authorId+TO=authorId}author.name:Rowling

关键是在:之后传递下一个联接查询,而不是传递值。有关更多信息,请参阅