2014-01-07 54 views
1

我有我想在Solr的導入,所以我可以查詢它的主/細節表。 現在在我看來,只有細節表的第一行是進口的。Solr的嵌套數據導入

如何導入所有行從細節表?

我現在有這樣的事情在我的數據導入處理程序查詢:

<entity name="master" query="SELECT id, name, description, 
      FROM master WHERE isapproved = 1"> 

<!-- snip --> 

<entity name="details" query="SELECT sku,description,price 
           FROM details WHERE masterid='${master.id}'"> 
    <field column="sku name="sku" /> 
</entity> 

爲了讓更多的困難,有時只有主行沒有相應的詳細信息行。所以,我無法扭轉查詢(第一選擇細節,然後掌握),因爲這將讓我沒有主數據。

有什麼好的解決辦法嗎?

+1

關於您的問題'只是細節表的第一行是imported'你能列出你的schema.xml?可能你錯過了'multiValued =「true」'。關於'所以我不能扭轉取決於的查詢,你想列出什麼樣的搜索結果?主人還是細節? – cheffe

+0

謝謝,我沒有把它指定爲多值。你可以添加,作爲答案,我可以接受它嗎? – jao

回答

2

不幸的是我沒有看到您的schema.xml,但很可能您忘記在那裏將文檔屬性標記爲multiValued="true"。在這種情況下,Solr只會獲取第一個值並跳過其餘的值。